PDF de programación - J2EE Java 2 Entreprise Edition

Imágen de pdf J2EE Java 2 Entreprise Edition

J2EE Java 2 Entreprise Editiongráfica de visualizaciones

Publicado el 20 de Julio del 2018
932 visualizaciones desde el 20 de Julio del 2018
897,0 KB
54 paginas
Creado hace 17a (08/11/2006)
J2EE
Java 2 Enterprise Edition

Servlets
Servlets
JSPJSPs

Java

JDBC
JDBC

DAW
06/07

Copyright © 2006 Raquel CEDAZO LEÓN

Raquel CEDAZO LEÓN
[email protected]

1

J2EE
Java 2 Enterprise Edition

Copyright © 2006 Raquel CEDAZO LEÓN

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation; with
no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts.

A copy of the license is included in the section entitled "GNU Free
Documentation License".

http://www.gnu.org/copyleft/fdl.html

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

2

J2EE
Índice



Introducción

● Servlets
● Tomcat
● Eclipse
● Filtros
● JSPs
● TagLibs
● JDBC
● ANT
● EasyEclipse

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

3

J2EE
Introducción (1/5)

● Diferentes plataformas de Java:
– J2SE (Java 2 Standard Edition)

● Desarrollo de aplicaciones y applets

– J2ME (Java 2 Micro Edition)

● Desarrollo de aplicaciones para micro­dispositivos (pantalla y memoria 

limitados): PDAs y teléfonos móviles

– J2EE (Java 2 Plataform Enterprise Edition)

● Aplicaciones de servidor
● Con el tiempo, algunas APIs de J2EE se van pasando a J2SE

● J2EE es un conjunto de especificaciones orientadas al desarrollo 

de aplicaciones empresariales

Raquel CEDAZO LEÓN
[email protected]

4

DAW
06/07

J2EE
Introducción (2/5)

● Características de las aplicaciones empresariales:

– Acceso a base de datos
– Transaccionalidad
– Escalabilidad
– Disponibilidad
– Seguridad
– Integración

● Arquitectura de tres capas:

– Máquina cliente
– Máquina servidor J2EE
– Base de datos

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

5

J2EE
Introducción (3/5)

● Especificaciones principales:

– Servlets: API para crear aplicaciones web dinámicas
– JSPs (Java Server Page): extensión de Servlets para facilitar el 

desarrollo de aplicaciones web

– JDBC (Java Dabase Connectivity): API para acceder a base de 

datos (incluida en J2SE)

– JNDI (Java Naming and Directory Interface): API para acceder a 

servicios de directorios. Ej. LDAP (incluida en J2SE)

– JMS (Java Message Service): API para colas de mensajes 

asíncronas

– EJBs (Enterprise JavaBeans): API para la realización de 

componentes distribuidos

– JTA (Java Transaction API): API para realizar aplicaciones 

transaccionales distribuidas

Raquel CEDAZO LEÓN
[email protected]

6

DAW
06/07

J2EE
Introducción (4/5)

– JavaMail: API para realizar aplicaciones de email independientes de 

plataforma y protocolo

– JAF (JavaBeans Activation Framework): API necesario para 

JavaMail para manejar mensajes MIME (Multipurpose Internet Mail 
Extension)

– JAXP (Java API for XML Processing): API para parsear XML y 

transformaciones XSLT

– JCA (Java Connector Architecture): API para conectar con otros 

sistemas de información. Ej. centro de mensajes cortos

– JAAS (Java Authentication and Authorization Server): API que 

proporciona mecanismos de autenticación y autorización

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

7

J2EE
Introducción (5/5)

● J2EE no deja de ser un CONJUNTO DE ESPECIFICACIONES. 

Existen diferentes implementaciones según el fabricante:
– Libres

● Tomcat: Contenedor de Servlets y motor de JSPs
● JBoss: Servidor de aplicaciones J2EE
● Geronimo: Servidor de aplicaciones J2EE

– Comerciales

● BEA WebLogic Server
● IBM WebSphere
● Oracle Application Server

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

8

J2EE
Servlets. Introducción (1/4)

● API para la generación de contenido dinámico
● Servlet: clase Java que recibe peticiones (normalmente HTTP) y 

genera una respuesta (normalmente HTML o XML)

● Una aplicación web compuesta de Servlets se ejecuta en un 

servidor de aplicaciones web (contenedor)

Usuario
navegador

HTTP TCP / IP

Peticion (GET / POST)
Respuesta

DAW
06/07

Servlet Container (Tomcat)

Servlet

Servlet

Servlet

Raquel CEDAZO LEÓN
[email protected]

9

J2EE
Servlets. Ejemplo: “Hola Mundo Servlet” (2/4)

EJEMPLO



Imprime la cadena “Hola Mundo desde un Servlet” en una página 
web

● Ficheros:

– HolaMundoServlet.java
– web.xml

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

10

J2EE
Servlets. Ejemplo: “Hola Mundo Servlet” (3/4)

HolaMundoServlet.java

package servlets;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.*;

public class HolaMundoServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse 

response) throws ServletException, IOException {

response.setContentType("text/html");

PrintWriter out = response.getWriter();

out.println("<html>");
out.println("<body><h1>Hola Mundo desde un Servlet</h1></body>");
out.println("</html>");

Raquel CEDAZO LEÓN
[email protected]

11

DAW
06/07

}

}
  

J2EE
Servlets. Ejemplo: “Hola Mundo Servlet” (4/4)

web.xml

<?xml version="1.0" encoding="ISO­8859­1"?>
<!DOCTYPE web­app
    PUBLIC "­//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web­app_2_3.dtd">
<web­app>

  <display­name>Ejemplos</display­name>
  <description>
    Ejemplos de J2EE (DAW0607)
  </description>

  <servlet>
    <servlet­name>HolaMundoServlet</servlet­name>
    <servlet­class>servlets.HolaMundoServlet</servlet­class>
  </servlet>

  <servlet­mapping>
    <servlet­name>HolaMundoServlet</servlet­name>
    <url­pattern>/HolaMundoServlet</url­pattern>
  </servlet­mapping>

</web­app>

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

12

J2EE
Tomcat (1/3)

● Servidor de aplicaciones web o Contenedor de Servlets
● Tomcat: http://tomcat.apache.org
● Descargar: Tomcat 5.0.28 (jakarta­tomcat­5.0.28.tar.gz)
● Requisito: JDK (Java Development Kit)
● Descomprimir: tar zxvf jakarta­tomcat­5.0.28.tar.gz
● export JAVA_HOME=”DIR_INSTALACION_JDK”
● Scripts de arranque y parada del servidor, dentro del 

directorio /bin de instalación:
– Arrancar Tomcat: 

./startup.sh

– Parar Tomcat:
./shutdown.sh

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

13

J2EE
Tomcat (2/3)

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

14

J2EE
Tomcat (3/3)

● Pasos para desplegar una aplicación web:

– Crear un archivo WAR (Ejemplo: DAW0607.war):

● WEB_INF
● WEB_INF/classes
● WEB_INF/lib
● WEB_INF/web.xml

– Copiar dentro del directorio webapps
– Reiniciar el Tomcat
– Abrir un navegador: http://localhost:8080/DAW0607/MI_APLICACION

● server.xml (directorio conf): permite definir nuevos contextos

 <Context path="/daw0607" docBase="/home/rcedazo/workspace/DAW0607/web/" 
reloadable="true">
 </Context>

Raquel CEDAZO LEÓN
[email protected]

15

DAW
06/07

J2EE
Eclipse (1/2)



IDE (Integrated Development Environment)

● Descargar: Eclipse SDK 3.2.1 http://www.eclipse.org 
● Requisito: JRE (Java Runtime Environment)
● Eclipse plugins: http://eclipse­plugins.2y.net/

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

16

J2EE
Eclipse (2/2)

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

17

J2EE
Filtros. Introducción (1/5)

● Acciones repetitivas: control de seguridad, herramienta de logs, 

sistema compresión de datos

● Solución tradicional: “include” de ficheros
● Filtro: mecanismo gestionado por el contenedor de Servlets que 
intercepta las peticiones a Servlets o JSPs y que actúa antes y 
después de pasar el control al Servlet

● Pre­procesadores y post­procesadores de Servlets
● Transparencia y reutilización de código
● Contenido dinámico y estático (HTML, imágenes)
● Métodos que impone la interfaz:

DAW
06/07

– init(): inicialización del filtro
– destroy(): destrucción del filtro
– doFilter(request, response, filterChain)

Raquel CEDAZO LEÓN
[email protected]

18

J2EE
Filtros. Ejemplo: “Velocidad Filter” (2/5)

EJEMPLO

● Mide el tiempo de ejecución de los Servlets y lo imprime por la 

salida estándar

● Recibe un parámetro que indica la unidad en la que se quiere 

medir el tiempo. En este caso pueden ser “segundos” o 
“milisegundos”

● Ficheros:

– VelocidadFilter.java
– web.xml

DAW
06/07

Raquel CEDAZO LEÓN
[email protected]

19

J2EE
Filtros. Ejemplo: “Velocidad Filter” (3/5)

VelocidadFilter.java
package filters;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public final class VelocidadFilter implements Filter {

private FilterConfig filterConfig = null;

public void init(FilterConfig filterConfig) throws ServletException {

this.filterConfig = filterConfig;

}

public void doFilter(ServletRequest request, ServletResponse response,

FilterChain chain) throws IOException, ServletException {

Raquel CEDAZO LEÓN
[email protected]

20

DAW
06/07

J2EE
Filtros. Ejemplo: “Velocidad Filter” (4/5)

long startTime = System.currentTimeMillis();

chain.doFilter(request, response);

long stopTime = System.currentTimeMillis();

String unidad = filterConfig.getInitParameter("unidad");
Double tiempo;
if (unidad.equalsIgnoreCase("segundos")) {

tiempo = new Double (((double)(stopTime ­ startTime))/1000);

} else {

tiempo = new Double (stopTime ­ startTime);

}

System.out.println("Tiempo de ejecución del servlet 

["+((HttpServletRequest)request).getServletPath()+"]: 
"+tiempo+" "+unidad);

      

}

public void destroy() {

this.filterConfig = null;

DAW
06/07

}

}

Raquel CEDAZO LEÓN
[email protected]

21

J2EE
Filtros. Ejemplo: “Velocidad Filter” (5/5)

web.xml
  <filter>
    <filter­name>VelocidadFilter</filter­name>
    <filter­class>filters.VelocidadFilter</filter­class>
    <init­param>
      <param­name>unidad</param­name>
      <param­value>segundos</param­value>
      <description>Unidad en la que se mide el tiempo (milisegundos o 

segundos)</description>

    </init­param>
  </filter>

  <filter­mapping>
    <filter­name>VelocidadFilter</filter­
  • Links de descarga
http://lwp-l.com/pdf12625

Comentarios de: J2EE Java 2 Entreprise Edition (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad