Arquitetura JSF, Spring e Hibernate

7 respostas
smorigo

Bom dia pessoal estou definido a arquitetura de um projeto aqui que irá utilizar: JSF, Spring e Hibernate.
Estou estruturando o projeto da seguinte forma:

JavaBean &gt Interface DAO &gt Implementação DAO &gt Interface Service &gt Implementação Service &gt Facade

Minha Implementação DAO está estendendo do HibernateSupport
Minha Implementação Service está recebendo a sessão injetada pelo Spring

Estou achando essa estrutura muito complexa para uma tarefa simples, não tenho experiência no uso desses três frameworks em conjunto então fico com duvida se estou complicando demais uma coisa simples.

Usei o livro Spring Live como base para esta arquitetura e fico pensando se realmente é necessário/útil manter esse conjunto de Interface e Implementação do Service…

Gostaria de opiniões.

Obs. Pensei em usar o MyFaces Orchestra mas ficara para uma próxima oportunidade.

Obrigado pessoal.

7 Respostas

ricardosoares

parece-me boas escolhas.
particularmente, não gosto do JSF.
tenho feito uns experimentos com:

  • spring
  • acegi
  • hibernate
  • zk (totalmente ajax, sem javascript - ao invés de JSF)
  • jasperreports
    tudo num unico projeto. se quiser, te mando .

boa sorte

smorigo

Legal Ricardo, sobre os frameworks acho que vo tentar ir até o fim com esses, mas sabe estou com duvida se realmente preciso dessa arquitetura toda.

Até o momento não consegui encontrar nenhum caso onde meus DAO e meus Services sejam diferentes sabe parece que estou duplicando algo que não sera utill…

Ainda não criei nenhum processo complexo apenas CRUDs oq vc acha ?

Mantu

Mas AJAX não é “Asynchronous Javascript and XML”? Como pode isso???
:shock: :shock:

ricardosoares

Mantu:
ricardosoares:

  • zk (totalmente ajax, sem javascript - ao invés de JSF)

Mas AJAX não é “Asynchronous Javascript and XML”? Como pode isso???
:shock: :shock:

o q quero dizer com “ajax sem javascript” é que vc não precisa programar os scripts. tudo em java mesmo.
confira http://www.zkoss.org

ricardosoares

smorigo:
Legal Ricardo, sobre os frameworks acho que vo tentar ir até o fim com esses, mas sabe estou com duvida se realmente preciso dessa arquitetura toda.

Até o momento não consegui encontrar nenhum caso onde meus DAO e meus Services sejam diferentes sabe parece que estou duplicando algo que não sera utill…

Ainda não criei nenhum processo complexo apenas CRUDs oq vc acha ?

acho q a arquitetura q vc escolheu está perfeita. ainda q vc não tire proveito da reusabilidade dos DAOs e dos métodos nos Services, essa arquitetura mantém o padrão usado no mercado e trará uma fácil manutenção e compreenção dos códigos (principalmente para outros programadores).

conselho: não deixe de avaliar as facilidades q o acegi poderá te proporcionar no quesito segurança.

L

Ultimamente tenho uma certa crítica com relação a essa arquitetura “lasanha”, que é aquela que é feito com uma camada de negócio, depois passa outra camada e depois outra e mais outra…

Não que eu ache que tudo deva ser em apenas uma camada onde tudo está misturado, só acho que o número de camadas deva ser proporcional à complexidade do sistema. Tipo, faça uma aplicação com poucas camadas, à medida que a complexidade aumenta, aumente o número de camada para absorver essa complexidade.

A minha opinião é: se vai utilizar JSF, e a parte de injeção de dependências for muito simples, não use Spring. O faces-config.xml possui um mecanismo simples de injeção de dependências. E se uma das camadas forem muito parecidas, parecendo simplesmente um repassador de mensagens, livre-se de uma delas.

Ok?

smorigo

Bom então irei continuar com essa arquitetura, alguém poderia me confirmar qual design pattern que utiliza essa estratégia de Interface/Implementação Service e se minha classe que ira lidar diretamente com a pagina JSF seria meu Facade…

Obrigado pessoal… dps posto aqui o resultado da experiencia :slight_smile:

Criado 20 de julho de 2007
Ultima resposta 20 de jul. de 2007
Respostas 7
Participantes 4