Você pode ganhar um iPad 2 na promoção do Javafree

O Portal javafree.org inicia mais uma promoção para os usuários do fórum. Quem publicar mais posts válidos (perguntas ou respostas) entre 16/4 a 13/7 levará para casa um iPad 2 de 16GB!

Clique aqui e saiba mais.
Forum Main Page > JEE / EJB

EJB usar ou não usar?!


Goto page 1


New Topic    Reply Message


  1. marcelogodois
    Offline
    Posts: 114

    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Boa noite Srs!!!
    Gostaria da ajuda de vocês, pois minha empresa deseja migrar seus sistemas de Visual DataFlex, para JAVA. Aliás, já estamos começando esta tarefa. Estamos usando o struts e estamos analisando a possibilidade de implementar EJB. Mas embora sejam muitos sistemas, a maioria são pequenos.
    O que vocês podem me dizer sobre a tecnologia EJB?! Quais as vantagens e desvantagens?! Na verdade, não conheço bem esta tecnologia, estou procurando me enterar agora... Ficarei muito grato a quem puder me ajudar. ops:




  1. vfpamp
    Offline
    Posts: 6010

    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    EJB funciona principalmente para ambiente distribuído

    Se você tem processos demorados você coloca um EJB em outro micro e manda ele rodar

    Fora isso o EJB pode funcionar como um Servidor de Aplicações, centralizando toda a lógica, independente de tipo de conexão, JSP ou Swing.

    Usando EJB você começa a ter oportunidades como o mapeamento objeto relacional automatizado, o EJB já implementa alguma coisa, mas se você não gostar pode usar um Hibernate ou um OJB da vida.

    A aplicação fica bem maior, requer um servidor J2EE, não somente um container web. Gera mais código e mais manutenção.
    _________________
    Vitor Pamplona
    http://vitorpamplona.com
    @vitorpamplona

    Make It Epic
    Idéias para projetos em Computação
    Como ter boas idéias




  1. ronaldtm
    Offline
    Posts: 2299

    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    EJB é a tecnologia de componentes distribuídos da plataforma java. Algo parecido seria CORBA ou DCOM (é? eu não entendo muito de MS).

    As vantagens obtidas por componentes EJB incluem: delimitação declarativa de transações (ao invés de chamadas explícitas no meio do código), distribuição (comunicação entre objetos remotos), controle de concorrência e ciclo de vida (contratos sobre a criação, uso, reciclagem e remoção de objetos). Além disso, também existem componentes para serem usados como entidades persistentes (os famosos Entity Beans) e consumo de mensagens assíncronas (Message-Driven Beans).

    Ela é muito criticada por ser complexa e exigir muita codificação. Muitas interfaces a serem criadas e implementadas, exceções especiais a serem tratadas, descritores XML, etc. Um outro problema da tecnologia é que os componentes dependem de um container EJB para rodar. Não se pode (ou é muito difícil) rodar estes componentes fora do container, por exemplo, para executar testes.

    A especificação EJB 3.0 está sendo concebida para tentar solucionar estes problemas, mas ainda é cedo para se ter certeza de que isso vai mesmo se concretizar.

    Alternativas há muitas. Como que numa reação a esse modelo pesado de componentes, surgiu uma enxurrada de projetos open source visando a criação de containers leves (lightweight). Estes containers objetivam a facilidade e a simplicidade, sem perda (ou com um mínimo de perda) da flexibilidade e do poder concedido pelos EJBs. Exemplos deste tipo de container são o Spring e o PicoContainer. Eles usam o padrão (pattern) Dependency Injection e o princípio da inversão de controle para configurar os componentes, que são classes java comuns (Plain Old Java Objects, ou POJOs) sem a necessidade da implementação de interfaces específicas que os prendam ao container. Da mesma maneira, eles adicionam delimitação de transações, AOP, configuração, etc. aos componentes, sem que isso (ou redizindo a um mínimo) introduza dependências quanto à sua API.

    Para a persistência, existem frameworks de mapeamento objeto-relacional de altíssima qualidade, como o Hibernate, ou implementações do padrão (standard) JDO, que define um modelo de persistência mais leve que o dos Entity Beans.

    Eu, pessoalmente, não sou muito fã de EJBs (resultado do trauma de tentar usá-los em sua versão 1.2... argh!), e recomendaria a dupla Spring+Hibernate. Ainda mais se suas aplicações não forem tão complexas assim, o modelo 'pesado' dos EJBs só ia atravancar o seu ciclo de desenvolvimento.

    Tetsuo
    _________________
    In fact, people who study design methods without also practicing design are almost always frustrated designers who have no sap in them, who have lost, or never had, the urge to shape things. Such a person will never be able to say anything sensible about "how" to shape things either. (Christopher Alexander)




  1. netoz
    Offline
    Posts: 9

    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Se vc precisa de suporte para middle tier transactions e tambem precisa montar um sistema de varias camadas/distribuido EJBs pode lhe ajudar. Caso contrario provavelmente nao precisa. Se vcs acabarem utilizando EJBs hoje existe varias ferramentas, IDEs, que lhe proporcionam o uso dessa technologia de maneira rapida, simple, e transparence. Eclipse, Intellij, Workshop, etc.... Todos tem como criar EJBs a partir de um simple click.

    Em termos de referencia... em um dos ultimos relatorios da Gartner que tive a oportunidade de ler - menos de 30% do projetos em Java no Brasil usam EJBs. A maioria dos que usam estao em projetos governamentais e industria financeira.

    Abs,

    --alex




  1. marcelogodois
    Offline
    Posts: 114

    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Obrigado pela dica amigos!!!! Acho que agora pelo menos já tenho uma base de onde começar...




  1. Relacionados





New Topic    Reply Message     Forum Main Page -> JEE / EJB


Goto page 1