Escolhendo entre HttpSession e Stateful Session Bean Tanto os objetos HttpSession utilizados nos Servlets e os EJB's Stateful Session Bean podem ser usados para manter o estado do cliente, como por exemplo os dados do carrinho de compras. Mas qual é a melhor opção? Isso vai depender, é claro, de suas necessidades. As principais características são:
1. Statefull Session Beans Vantagens: * Suporta serviços de transação, segurança, gerenciamento de ciclo de vida, RMI, cache, thread safe, etc. Todos estes recursos já fazem parte do EJB, você não precisa desenvolve-los. * Pode ser acessado por clientes Web (Servlets, JSP) e classes Swing através de RMI e também através de outras linguagens usando CORBA. * Não está amarrado a um HTTP request. Desvantagens: * Por causa do grande número de recursos citado acima, um Session Bean é mais pesado que um HttpSession e por isso leva mais tempo em cada requisição e utiliza mais recursos do servidor. 2. HttpSession Vantagens * É um simples objeto java e é portanto muito mais leve e rápido utilizando poucos recursos do servidor. Desvantagens: * Não suporta transação, cache, RMI e não pode ser acesso diretamente através de outros clientes. * Os sessions estão amarrados ao objeto ServletRequest. Em geral um HttpSession é melhor usado para guardar o estado do cliente (propriedades em formato de nome/valor). Estes dados podem ser enviados para um Stateless Session bean para fazer o processamento das informações do cliente. Um Session Bean, geralmente contém lógica de negócio e possui os métodos que podem ser usados para tratar os dados nele contidos. Uma outra vantagem que havia nos Session Beans era a possibilidade de utilização em Cluster, mas as novas versões de Web Container (Jetty e Tomcat no JBoss) já suportam cluster de objetos HttpSession. Bons códigos!!! ______________________________________________________________________________ Handerson Ferreira Gomes Summa Technologies Boletim Dicas Java - Sua dose diária de Java. ================================================================================ [dicas-list] circula diariamente com pequenas dicas sobre a plataforma Java e é mais um serviço da Sociedade de Usuários Java - http://www.soujava.org.br *** SouJava - Fortalecendo a Comunidade Java Brasileira! *** - Para contribuir com uma dica, envie um e-mail para [EMAIL PROTECTED] - Participe de outras listas de discussão sobre a linguagem Java. Saiba mais em http://www.soujava.org.br/lista.htm -------------------------------------------------------------------------------- - Para assinar este boletim: mailto:[EMAIL PROTECTED] - Para cancelar sua assinatura: mailto:[EMAIL PROTECTED] - Dicas anteriores: http://www.mail-archive.com/dicas-list%40soujava.org.br - Para discutir sobre as dicas, acesse o Mundo OO (http://www.mundooo.com.br)