Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Docente:
Noé Arcos Muñoz
¿Qué es?
JSP son las siglas de Java Server Pages. Es una tecnología del lado del servidor que se
utiliza para crear páginas web dinámicas. Las páginas JSP están escritas en una
combinación de HTML y código Java. El código Java se utiliza para realizar tareas
dinámicas, como acceder a bases de datos, procesar la información introducida por el
usuario y generar resultados. El código HTML se utiliza para definir el diseño y la
apariencia de la página web.
• Las páginas JSP son dinámicas, lo que significa que pueden actualizarse sin tener
que recompilar el código Java.
• Las páginas JSP son independientes de la plataforma, lo que significa que pueden
ejecutarse en cualquier servidor compatible con Java.
• Las páginas JSP son fáciles de aprender y utilizar, incluso para los principiantes.
Ejemplo
<%@page import="java.util.*"%>
<HTML>
<BODY>
<%!
Date the Date=new Date(); Date getDate()
{
System.out.println("In getDate() method"); return theDate;
}
%>
Hello! The time is now<%=getDate()%>
</BODY>
</HTML>
Servlet
¿Qué es?
Servlet son las siglas de Server-side Java Applet. Es una clase Java que se ejecuta en
un servidor web y puede utilizarse para generar contenidos dinámicos. Los servlets se
utilizan para ampliar las capacidades de un servidor web y pueden emplearse para
procesar datos de formularios, generar imágenes y acceder a bases de datos.
• Los servlets son dinámicos, lo que significa que pueden actualizarse sin necesidad
de reiniciar el servidor web.
• Los servlets son independientes de la plataforma, lo que significa que pueden
ejecutarse en cualquier servidor que admita Java.
• Los servlets son escalables, lo que significa que pueden utilizarse para gestionar
un gran número de peticiones.
Ejemplo
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response) throws IOException {
response.setContentType("text/html");
response.getWriter().println("<h1>Hello, World!</h1>");
}
}
¿Qué es?
El objeto request representa la solicitud HTTP que envía el cliente al servidor. El objeto
request contiene información sobre la solicitud, como el método HTTP, la URL, los
parámetros de la consulta y los encabezados.
Los objetos request y response se utilizan para intercambiar información entre el cliente
y el servidor. El objeto request se utiliza para enviar información del cliente al servidor, y
el objeto response se utiliza para enviar información del servidor al cliente.
Ejemplo
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
Método Get
¿Qué es?
El método GET es un método HTTP que se utiliza para recuperar datos del servidor. Los
datos se envían en la URL de la solicitud. El método GET es idempotente, lo que significa
que se puede realizar varias veces sin tener ningún efecto.
El método GET se utiliza para recuperar datos del servidor. Por ejemplo, se puede utilizar
el método GET para recuperar una lista de productos de una tienda online, para obtener
el contenido de una página web o para obtener información sobre el servidor.
Ejemplo
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
// Obtener la lista de productos
List<Product> products = ProductRepository.findAll();
Método Post
¿Qué es?
El método POST es un método HTTP que se utiliza para enviar datos al servidor. Los
datos se envían en el cuerpo de la solicitud. El método POST no es idempotente, lo que
significa que, si se realiza varias veces, se puede enviar el mismo dato varias veces
El método POST se utiliza para enviar datos al servidor. Por ejemplo, se puede utilizar el
método POST para crear una nueva cuenta en una tienda online, para enviar un
formulario de contacto o para subir un archivo.
Ejemplo
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
// Obtener los datos del usuario
String name = request.getParameter("name");
String email = request.getParameter("email");
// Crear el usuario
User user = new User(name, email);
¿Qué es?
El patrón de diseño DAO (Data Access Object) es un patrón de diseño de software que
separa la lógica de acceso a datos de la lógica de negocio. Esto permite que la lógica de
negocio se concentre en las tareas de negocio, mientras que la lógica de acceso a datos
se encarga de la interacción con la base de datos.
¿Para qué sirve?
Ejemplo
interface Dao<T> {
T findById(long id);
List<T> findAll();
T save(T entity);
T update(T entity);
void delete(long id);
}
@Override
public User findById(long id) {
// Implementación...
}
@Override
public List<User> findAll() {
// Implementación...
}
@Override
public User save(User entity) {
// Implementación...
}
@Override
public User update(User entity) {
// Implementación...
}
@Override
public void delete(long id) {
// Implementación...
}
}
¿Qué es?
El patrón de diseño DTO (Data Transfer Object) es un patrón de diseño de software que
se utiliza para transferir datos entre diferentes componentes de una aplicación. Los DTO
son objetos planos que contienen solo los datos que se necesitan transferir.
• Transferencia de datos: Los DTO se utilizan para transferir datos entre diferentes
componentes de una aplicación. Esto facilita la transferencia de datos entre
componentes que utilizan diferentes formatos de datos.
• Encapsulación de datos: Los DTO encapsulan los datos que se necesitan
transferir. Esto facilita la modificación de los datos sin afectar a los componentes
que los utilizan.
• Reducción de la complejidad: Los DTO reducen la complejidad de las
aplicaciones. Esto facilita la comprensión y el mantenimiento de las aplicaciones.
Ejemplo
interface DTO {
¿Qué es?
Ejemplo
interface Drawable {
void draw();
}
@Override
public void draw() {
// Dibuja un círculo
}
}
@Override
public void draw() {
// Dibuja un cuadrado
}
}
Librería Javax
¿Qué es?
La librería javax es una librería de clases e interfaces que se utilizan para el desarrollo
de aplicaciones Java. Se divide en varios paquetes, cada uno de los cuales contiene
clases e interfaces relacionadas con un tema específico.
• Para crear una GUI: La librería javax.swing proporciona clases e interfaces para
crear interfaces gráficas de usuario (GUI) de alta calidad. Estas GUI se pueden
utilizar en aplicaciones de escritorio, web, móviles y de servidor.
• Para desarrollar un servlet: La librería javax.servlet proporciona clases e interfaces
para desarrollar servlets. Los servlets son componentes web que se utilizan para
proporcionar contenido dinámico a las páginas web.
• Para acceder a una base de datos: La librería javax.sql proporciona clases e
interfaces para acceder a bases de datos. Estas clases e interfaces facilitan la
comunicación con una base de datos desde una aplicación Java.
• Para procesar XML: La librería javax.xml proporciona clases e interfaces para
procesar XML. Estas clases e interfaces facilitan el análisis, la creación y la
modificación de archivos XML.
Ejemplo
import javax.swing.*;
Librería Jakarta
¿Qué es?
La librería Jakarta es una colección de módulos Java Enterprise Edition (EE) mantenidos
por la Fundación Eclipse. Estos módulos se basan en los módulos de Java EE 7, pero
han sido actualizados para incluir nuevas características y mejoras.
La librería Jakarta se utiliza para desarrollar aplicaciones Java EE. Se divide en varios
módulos, cada uno de los cuales contiene clases e interfaces relacionadas con un tema
específico.
¿Para qué sirve?
• Para crear una aplicación web: La librería Jakarta proporciona clases e interfaces
para crear aplicaciones web de alta calidad. Estas aplicaciones web se pueden
utilizar para proporcionar contenido dinámico e interactivo a los usuarios.
• Para desarrollar servicios web: La librería Jakarta proporciona clases e interfaces
para desarrollar servicios web. Los servicios web son componentes de software
que se pueden utilizar para intercambiar datos entre aplicaciones.
• Para acceder a datos persistentes: La librería Jakarta proporciona clases e
interfaces para acceder a datos persistentes. Estos datos pueden almacenarse en
una base de datos, un archivo o cualquier otro almacenamiento persistente.
• Para procesar mensajes: La librería Jakarta proporciona clases e interfaces para
procesar mensajes. Estos mensajes pueden ser utilizados para intercambiar
información entre aplicaciones.
• Para desarrollar aplicaciones empresariales: La librería Jakarta proporciona
clases e interfaces para desarrollar aplicaciones empresariales. Estas
aplicaciones son complejas y requieren un alto nivel de rendimiento y fiabilidad.
Ejemplo
package com.example.myapp;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
response.setContentType("text/plain");
response.getWriter().println("Hello, World!");
}
}
Conclusión
En este trabajo de investigación, hemos explorado una variedad de conceptos esenciales
en el desarrollo de aplicaciones web Java. Comenzamos por entender qué son JSP
(JavaServer Pages) y Servlets, dos tecnologías fundamentales en la construcción de
aplicaciones web Java. Descubrimos que JSP es una tecnología de presentación que
permite la creación de páginas web dinámicas y Servlets son componentes Java que
gestionan las solicitudes y respuestas HTTP en el servidor.
Además, analizamos los objetos Request y Response, que son cruciales para la
comunicación entre el cliente y el servidor. El objeto Request contiene información sobre
la solicitud del cliente, mientras que el objeto Response se utiliza para enviar datos de
vuelta al cliente.
Exploramos los métodos POST y GET, que son dos de los métodos HTTP utilizados para
enviar datos entre el cliente y el servidor. El método POST se usa para enviar datos
confidenciales o grandes, mientras que el método GET se utiliza para solicitudes que no
requieren confidencialidad y envían datos a través de la URL.
También discutimos los patrones de diseño DAO (Data Access Object), DTO (Data
Transfer Object) e Interface, que son ampliamente utilizados en el desarrollo de
aplicaciones Java para garantizar una separación efectiva de la lógica de negocio y el
acceso a datos, y para facilitar la comunicación entre capas de la aplicación.
Finalmente, abordamos la diferencia entre las librerías javax y jakarta, señalando que
jakarta es la continuación de javax en el mundo de Java Enterprise Edition (EE) después
de una reorganización en la industria de Java. Ambas librerías son esenciales para el
desarrollo de aplicaciones web Java.