Componentes y servicios Java EE
Internet y WWW representan el fundamento sobre los cuales se está construyendo la economía de la información.
La meta de JEE es definir un estándar que ayude a suplir los retos tecnológicos en esta nueva era.
JEE soporta aplicaciones distribuidas que toma ventajas de las tecnologías existentes y en desarrollo simplificando el proceso a través de un modelo de aplicaciones basados en componentes.
JEE soporta aplicaciones desde las C/S corporativas hasta e-commerce con Web en Internet.
Defines estándares que son implementados por distintos proveedores y fabricantes, no fuerza a emplear ningún producto específico.
Máxima interoperabilidad (Web services, IIOP, RMI, etc.).
“Conjunto de especificaciones y prácticas coordinadas que juntas permiten soluciones para el desarrollo, despliegue y gestión de aplicaciones multicapa centradas en servidor”.
En conclusión…
La plataforma de Java EE es un conjunto de especificaciones en el API que te permiten construir aplicaciones web.
Las funcionalidades de Java EE están basadas en Contenedores y componentes
Los componentes web
- Java Servlets
- Clases escritas en Java que procesan peticiones HTTP y construyen respuestas
- JavaServer Pages (JSP)
- Documentos basados en texto que contienen dos tipos de texto
- una plantilla de datos estática que puede expresarse en un formato como (X)HTML o XML
- elementos JSP que determinan cómo la página construye el contenido dinámico
- Documentos basados en texto que contienen dos tipos de texto
- JavaServer Faces (JSF)
- Componentes de interfaz de usuario para aplicaciones web
Los componentes de negocio
- Lógica que resuelve las necesidades de un determinado dominio de aplicación
- Enterprise beans (EJBs)
- Pueden procesar datos recibidos del lado cliente y enviarlos al nivel de sistema de información para su almacenamiento
- Pueden recuperar datos del sistema de información, procesarlos y enviarlos al cliente
- Tipos de EJBs
- Bean de sesión
- Una conversación con un cliente
- Bean dirigido por mensajes
- Permite que un componente de negocio pueda recibir mensajes asíncronamente, normalmente con el Java Message Service (JMS)
- Bean de sesión
Los clientes en Java EE son
- Clientes web: navegadores web, páginas web, applets
- Aplicaciones de cliente
Estructura de una aplicación web
Denominamos aplicación web a las herramientas que los usuarios pueden utilizar accediendo a un servidor; ya sea en Internet o en Intranets
La estructura más habitual para este tipo de aplicaciones es de tres niveles, aunque podemos verla también como cuatro niveles
- Nivel
Cliente: Proporcionado por un navegador o una aplicación cliente, Corre en
la máquina del usuario.
- Si es un navegador, esperara recibir HTML, CSS, Javascript, …..
- Si es una aplicación, puede esperar mensajes con un formato definido….
- Nivel
Vista: Se compone de un conjunto de objetos orientados totalmente a
controlar la presentación de la información. Se encargan de generar los
mensajes que se enviaran al cliente, por ejemplo, el HTML, y el CSS, si nuestro
cliente es un navegador.
- Podemos utilizar JSF, Java, PHP, ASP,
- Nosotros nos centraremos en utilizar JSP
- Nivel
Capa de Negocio. Contiene toda la lógica de la aplicación, se encarga de
resolver el trabajo que debe hacer la aplicación
- Podemos utilizar Java, Perl, PHP,
- Nosotros lo realizaremos con Servlets de Java
- Nivel de
Persistencia. Contiene las herramientas para acceder a la base de datos
para obtener o guardar la información
- Nosotros utilizaremos Java y MySQL
Si nos paramos a pensar un momento, vemos que el nivel vista y el nivel cliente es el mismo, ya que en el servidor esta como vista, y se envia al cliente…luego, de lo que estamos hablado, es de construir aplicaciojnes siguiendo el patron MVC del que ya habiamos hablado anteriormente, solo tenemos que asumir que la capa de negocio está resuelta en los controladores y servicios, y la capa de persistencia está tambien resuelta en los modelos y servicios (de repositorio)
Ventajas:
- Ahorra tiempo: Se pueden realizar tareas sencillas sin necesidad de descargar ni instalar ningún programa.
- No hay problemas de compatibilidad: Basta tener un navegador actualizado para poder utilizarlas.
- No ocupan espacio en nuestro disco duro.
- Actualizaciones inmediatas: Como el software lo gestiona el propio desarrollador, cuando nos conectamos estamos usando siempre la última versión que haya lanzado.
- Consumo de recursos bajo: Dado que toda (o gran parte) de la aplicación no se encuentra en nuestro ordenador, muchas de las tareas que realiza el software no consumen recursos nuestros porque se realizan desde otro ordenador.
- Multiplataforma: Se pueden usar desde cualquier sistema operativo porque sólo es necesario tener un navegador.
- Portables: Es independiente del ordenador donde se utilice (un PC de sobremesa, un portátil, un movil) porque se accede a través de una página web (sólo es necesario disponer de acceso a Internet). La disponibilidad suele ser alta porque el servicio se ofrece desde múltiples localizaciones para asegurar la continuidad del mismo.
- Los virus no dañan los datos porque éstos están guardados en el servidor de la aplicación.
Desventajas:
- Ofrecen menos funcionalidades que las aplicaciones de escritorio. Las funcionalidades que se pueden realizar desde un navegador son más limitadas que las que se pueden realizar desde el sistema operativo. Tenemos que reconocer que cada vez este problema se va reduciendo, gracias al empleo de Javascript y Ajax.
- La disponibilidad depende de un tercero, el proveedor de la conexión a internet o el que provee el enlace entre el servidor de la aplicación y el cliente. Así que la disponibilidad del servicio está supeditada al proveedor.
Relacionado
Descubre más desde Recursos para formacion
Suscríbete y recibe las últimas entradas en tu correo electrónico.