Tecnologias básicas de Java EE

JSF

“A tecnologia Java Server Faces é um framework de componentes no lado servidor para interfaces de usuários Web baseada em tecnologia Java”, Java EE 6 TutorialJSF é uma especificação, a implementação é o PrimeFaces, RichFaces, IceFaces.Cuida da renderização de páginas web. É multicamadas e multi-plataforma.

Servlets

“Um servlet é uma classe da linguagem Java que é usada para estender as capacidades de servidores que hospedam aplicações por meio de um modelo de programação requisição-resposta”, Java EE 6 TutorialFaz a ligação entre a lógica de negócio e as páginas web. Faz roteamento, auditoria, transações

JAX-WS

“Provê a funcionalidade para serviços Web grandes baseado nos protocolos comuns WS-*”, Java EE 6 TutorialUsado para integração com outros sistemasÉ apenas uma especificação Apache CXF, JBOSS WebServices

JAX-RS

“Provê a funcionalidade para serviços web no estilo RESTful”, Java EE 6 TutorialÉ apenas uma especificação, um exemplo de implementação é o Apache Jersey

JPA

“A API de persitência Java provê facilidades de mapeamento objeto relacional para gerenciar dados relacionais em aplicações Java”, Java EE 6 Tutorial

Tecnologias avançadas de Java EE

EJB

É um componente servidor que encapsula a lógica de negócio de uma aplicação
Adiciona poderes a uma classe e permite que a aplicação se torne muito escalável.

Vantagens

  • Controle transacional automático
  • Capacidade de operar em ambientes distribuidos
  • Facilita a montagem do estilo arquitetural de microserviços ou implantações SOA (é comparável ao WCF nesse sentido)

JMS

É uma API Java que permite que aplicações criem, enviem, recebam ou leiam mensagensÉ uma especificação e pode ser comparado ao MQServices da IBM ou MSMQ da Microsoft.Implementação dessa especificação é o Apache MQ

JTA

Permite que aplicações acessem transações de uma maneira independente de implementações específicas.
É um controle de transação global, por exemplo, fazer o controle da transação para enviar dados a receita e salvar esses dados no banco local. Nesse caso, não adianta fazer controle da transação somente no banco de dados.

JCA

A arquitetura de conectores Java EE permite que componentes Java EE interajam com sistemas legados. Ex. SAPCC.
É uma alternativa mais avançada quando o JAX-WS ou JAX-RS não nos permite fazer a integração com sistemas legados.

Plataforma Java EE

É uma das principais plataformas para desenvolver Web e Distribuído. A plataforma Java EE pode ser representada por uma imagem:

O Java EE é na verdade um conjunto de especificações coordenado por um conjunto de empresas, por isso, o Java EE não representa uma tecnologia específica.

Os servidores de aplicação para o Java EE mais conhecidos são:

  • Apache Tomcat
  • JBOSS Web Server
  • JBOSS Application Server
  • IBM WebSphere WebServer
  • IBM WebSphere Application Server
  • Oracle Application Server