JEE/J2EE – Java Enterprise Edition

Juliana Jenny Kolb

teste seu conhecimento

Home > Simulados on-line  Questões de Concursos > Tecnologia da Informação (TI) > Java

Materiais de Estudo Complementares

Apostila Completa Java PDF 2191_64x64
Java_JEE 2191_64x64

JEE/J2EE – Java Enterprise Edition

Nota: O nome J2EE era usado nas versões mais antigas, até a 1.4. Hoje, o nome correto é Java EE, por uma questão de marketing, mas você ainda vai encontrar muitas referências ao antigo termo J2EE.

O que é Java EE?

O Java EE (Java Enterprise Edition) consiste de uma série de especicações bem detalhadas, dando uma receita de como deve ser implementado um soŸftware que faz uso de serviços de infraestrutura*.

*infraestrutura: persistência em banco de dados, transação, acesso remoto, web services, gerenciamento de threads, gerenciamento de conexões HTTP, cache de objetos, gerenciamento da sessão web, balanceamento de carga, entre outros.

Containers

O container provê os componentes construídos (como Servlets ou EJBs ). Quando uma aplicação web faz uma solicitação para um Servlet, o servidor não entrega a solicitação diretamente ao Servlet, mas para o container que contém o Servlet.

O container gerencia o ciclo de vida, provem mecanismos de segurança e disponibilizam os serviços necessários para cada tipo de componente.

Cada tipo de aplicação prevista no Java EE possui um tipo de container específico:

  • Aplicações servidoras web rodam em um Container Web;
  • Componentes remotos rodam em um Container EJB;
  • Aplicações clientes que utilizam Java EE rodam no Application Client Container.

Todas as APIs e serviços de especificação Java EE vêm junto com um Container.

*Há alguns servlet containers (pagos) famosos no mercado, entre eles, o Apache Tomcat, Jetty e Google App Engine.

Características:

  • Um container “envolve” um componente de forma a capturar mensagens dirigidas e fornecer serviços automáticos a este componente.
  • Portanto, antes de ser usado, um componente (seja cliente, Web ou EJB) deve:
    • Ser montado numa aplicação.
    • Ser “deployed” (implantado) dentro de um container.
  • O container pode ser configurado em tempo de deployment,
    • Com declarative programming, isto é, mudança de atributos.
  • Exemplos do que se faz no deployment ao configurar um container:
    • Estabelecer segurança.
    • Estabelecer o tratamento transacional.
    • Mapear nomes entre a aplicação e os recursos disponíveis.
  • O container também gerencia serviços não configuráveis:
    • O lifecycle dos componentes (achar, criar, destruir, …).
    • Pooling de recursos (conexões de bancos de dados, por exemplo).
    • Persistência de dados.

Principais APIs disponibilizadas pelo Java Enterprise

  • JavaServer Pages (JSP) (+), Java Servlets (+), Java Server Faces (JSF).
  • Enterprise Javabeans Components (EJB) (+) e Java Persistence API (JPA). (objetos distribuídos, clusters, acesso remoto a objetos, etc).
  • Java API for XMLWeb Services (JAX-WS), Java API for XML Binding (JAX-B) (trabalha com arquivos xml e webservices).
  • Java Autenthication and Authorization Service (JAAS) (API padrão do Java para segurança)
  • Java Transaction API (JTA) (controle de transação no contêiner).
  • Java Message Service (JMS) (troca de mensagens assíncronas).
  • Java Naming and Directory Interface (JNDI) (espaço de nomes e objetos).
  • Java Management Extensions (JMX) (administração da sua aplicação e estatísticas sobre a mesma).

 

Servlet Container

O Java EE possui várias especicações, entre elas, algumas para lidar com o desenvolvimento de uma aplicação Web:

 

Deixe uma resposta