Repository navigation
Mini Tutorial HTML
Para estudiantes de bachillerato - Preparación para Java Web (JSP/Servlets)
HTML (HyperText Markup Language) es el lenguaje que define la estructura y contenido de las páginas web.
🎯 ¿Por qué es importante para Java Web?
- Los servlets generan HTML como respuesta
- JSP combina HTML con código Java
- Es la base de todas las interfaces web
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Mi Primera Página</title>
</head>
<body>
<h1>¡Hola Mundo!</h1>
<p>Este es mi primer documento HTML.</p>
</body>
</html>| Etiqueta | Uso | Ejemplo |
|---|---|---|
<h1> a <h6>
|
Títulos | <h1>Título Principal</h1> |
<p> |
Párrafos | <p>Este es un párrafo</p> |
<div> |
Contenedor | <div>Agrupa contenido</div> |
<span> |
Texto inline | <span>Texto especial</span> |
<br> |
Salto de línea | Línea 1<br>Línea 2 |
<strong> |
Texto en negrita | <strong>Importante</strong> |
<em> |
Texto en cursiva | <em>Énfasis</em> |
|
|
|
|
|
|
|
🚀 Los formularios son CLAVE para:
- Enviar datos a servlets
- Procesar información en JSP
- Crear aplicaciones interactivas
|
|
Tipos de input más usados:
-
type="text"- Texto normal -
type="email"- Correo electrónico (con validación) -
type="password"- Contraseña (oculta el texto) -
type="number"- Solo números -
type="date"- Selector de fecha
Código:
<label for="comentarios">Comentarios:</label>
<textarea id="comentarios" name="comentarios"
rows="4" cols="50"
placeholder="Escribe tus comentarios aquí...">
</textarea>Código:
<label for="pais">País de origen:</label>
<select id="pais" name="pais" required>
<option value="">Selecciona tu país...</option>
<option value="mx">México</option>
<option value="co">Colombia</option>
<option value="ar">Argentina</option>
<option value="pe">Perú</option>
<option value="cl">Chile</option>
</select>Código:
<p>¿Cuál es tu nivel?</p>
<input type="radio" id="principiante" name="nivel" value="principiante">
<label for="principiante">Principiante</label>
<br>
<input type="radio" id="intermedio" name="nivel" value="intermedio">
<label for="intermedio">Intermedio</label>
<br>
<input type="radio" id="avanzado" name="nivel" value="avanzado">
<label for="avanzado">Avanzado</label>💡 Importante: Todos los radio buttons del mismo grupo deben tener el mismo
name.
Código:
<p>¿Qué tecnologías te interesan? (puedes elegir varias)</p>
<input type="checkbox" id="html" name="tecnologias" value="html">
<label for="html">HTML</label>
<br>
<input type="checkbox" id="css" name="tecnologias" value="css">
<label for="css">CSS</label>
<br>
<input type="checkbox" id="javascript" name="tecnologias" value="javascript">
<label for="javascript">JavaScript</label>
<br>
<input type="checkbox" id="java" name="tecnologias" value="java">
<label for="java">Java</label>
<br><br>
<input type="checkbox" id="acepto" name="acepto" required>
<label for="acepto">Acepto los términos y condiciones</label>Código:
<input type="submit" value="Enviar Formulario">
<input type="reset" value="Limpiar Todo">
<button type="button" onclick="alert('¡Hola!')">Botón Personalizado</button>Tipos de botones:
-
type="submit"- Envía el formulario -
type="reset"- Limpia todos los campos -
type="button"- Botón personalizado (necesita JavaScript)
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Formulario de Registro</title>
</head>
<body>
<h1>Registro de Estudiantes</h1>
<form action="ProcesarRegistro" method="post">
<!-- Datos personales -->
<h2>Datos Personales</h2>
<label for="nombre">Nombre completo:</label>
<input type="text" id="nombre" name="nombre" required>
<br><br>
<label for="email">Email:</label>
<input type="email" id="email" name="email" required>
<br><br>
<label for="edad">Edad:</label>
<input type="number" id="edad" name="edad" min="15" max="25">
<br><br>
<!-- Información académica -->
<h2>Información Académica</h2>
<label for="grado">Grado:</label>
<select id="grado" name="grado" required>
<option value="">Selecciona...</option>
<option value="10">Décimo</option>
<option value="11">Undécimo</option>
</select>
<br><br>
<p>¿Qué modalidad prefieres?</p>
<input type="radio" id="presencial" name="modalidad" value="presencial">
<label for="presencial">Presencial</label>
<br>
<input type="radio" id="virtual" name="modalidad" value="virtual">
<label for="virtual">Virtual</label>
<br><br>
<p>¿Qué materias te interesan más?</p>
<input type="checkbox" id="matematicas" name="materias" value="matematicas">
<label for="matematicas">Matemáticas</label>
<br>
<input type="checkbox" id="ciencias" name="materias" value="ciencias">
<label for="ciencias">Ciencias</label>
<br>
<input type="checkbox" id="programacion" name="materias" value="programacion">
<label for="programacion">Programación</label>
<br><br>
<label for="comentarios">Comentarios adicionales:</label>
<br>
<textarea id="comentarios" name="comentarios"
rows="4" cols="50"
placeholder="Cuéntanos algo más sobre ti...">
</textarea>
<br><br>
<!-- Términos y botones -->
<input type="checkbox" id="acepto" name="acepto" required>
<label for="acepto">Acepto los términos y condiciones</label>
<br><br>
<input type="submit" value="Registrarme">
<input type="reset" value="Limpiar Formulario">
</form>
</body>
</html>Crea un archivo mi-pagina.html que contenga:
- Tu nombre como título principal (
<h1>) - Un párrafo describiendo tus hobbies
- Una lista no ordenada con tus materias favoritas
- Un enlace a tu red social favorita
Crea un formulario que incluya:
- Nombre y apellido (campos obligatorios)
- Email y teléfono
- Un select con opciones: "Estudiante", "Profesor", "Padre de familia"
- Área de texto para el mensaje
- Checkbox para aceptar términos
- Botones de enviar y limpiar
- Agrega una imagen de tu colegio
- Crea enlaces de navegación a diferentes secciones
- Organiza todo con títulos y párrafos
- Incluye una lista con información del colegio
🔗 Lo que viene después:
- Servlets: Programas Java que generan este HTML dinámicamente
- JSP: Páginas HTML que pueden incluir código Java directamente
- Formularios: Los datos se envían a servlets para procesarse en Java
- Respuestas: Los servlets devuelven HTML personalizado al navegador
HTML (lo que acabas de aprender):
<form action="/mi-app/ProcesarLogin" method="post">
<input type="text" name="usuario" placeholder="Usuario">
<input type="password" name="password" placeholder="Contraseña">
<input type="submit" value="Iniciar Sesión">
</form>Java Servlet (lo que verás próximamente):
// El servlet recibe los datos del formulario HTML
String usuario = request.getParameter("usuario");
String password = request.getParameter("password");
// Procesa los datos...
if (validarUsuario(usuario, password)) {
// Genera HTML de respuesta
response.getWriter().println("<h1>¡Bienvenido " + usuario + "!</h1>");
}-
Siempre cierra tus etiquetas:
<p>texto</p> -
Usa comillas en atributos:
name="valor" - Indenta tu código: facilita la lectura
-
Usa nombres descriptivos:
name="nombreCompleto"mejor quename="n" -
Agrega comentarios:
<!-- esto es un comentario -->
| Concepto HTML | En Java Web |
|---|---|
<form action="mi-servlet"> |
El servlet "mi-servlet" recibe los datos |
<input name="usuario"> |
request.getParameter("usuario") en Java |
method="post" |
Datos seguros para contraseñas |
method="get" |
Datos visibles en la URL |
- Olvidar cerrar etiquetas
- No usar
nameen inputs (Java no los recibirá) - Etiquetas mal anidadas:
<p><div></p></div>❌ - Falta el atributo
foren labels
Con este HTML básico ya estás listo para entender:
- Cómo los Servlets generan HTML dinámicamente
- Cómo JSP combina HTML con Java
- Cómo procesar formularios en aplicaciones web
- Cómo crear interfaces completas para tus proyectos
💡 Recuerda: Este HTML es solo el inicio. En Java Web, todo este contenido puede ser generado dinámicamente por tus servlets y JSPs, lo que hace las aplicaciones realmente poderosas.
¡Ahora estás listo para dar el salto a Java Web! 🚀
- Introducción a VS Code
- Primeros pasos en VS Code
- Preparación del entorno Java Web
- ☁️ Cómo usar GitHub Codespace
Tema 1: Manejo básico de Java Web
- Introducción a Maven
- Ciclo de una petición web
- JSP con Scriptlets
- ¿Qué es un archivo JSP?
- Comparativa JSP Scriptlets vs ELJSTL
- ¿Qué es un Servlet?
- Mi primer formulario con Servlet
- HTTP Sessions
Tema 2: Modelo Vista Controlador (MVC)
- ¿Qué es el MVC?
-
Ejemplo básico MVC (MINI-CRUD)
- VISTA-index
- VISTA- Agregar Persona
- VISTA- Listar Personas
- CONTROLADOR- PersonaControladorServlet
- MODELO- DAO/VO
- CONTROLADOR- PersonaControladorServlet2
- VISTA- Editar Persona
- VISTA- Listar Persona
- Validación de unicidad de código
- Validación de campos obligatorios
- Comparativa persona-form.jsp
- Comparativa JSP puro vs MVC
Tema 3: Conexión a Base de Datos
Tema 4: Base de Datos con herencia
