Fala galera
Aqui na empresa ta começando um novo projeto e ainda utilizam struts 1.3, mas permitiram utilizar o hibernate 3
JPA, claro, ta incluso na permissão.
Poderiam me sugerir uma melhor estratégia (arquitetura, formas de conectar ao banco, forma de pegar o persistence) de como eu posso estar uzando o hibernate 3 com struts 1.3 ?
Provavelmente tb consego utilizar bean validator
Minha vontade é de trabalhar com annotations como já trabelhei em um sistema spring.
Gostaria de criar uma arquitetura e integração mais moderna possível.
Obrigado pela ajuda !
drsmachado
Struts 1 não possui suporte à annotations, será sempre XML (e muitos).
No websphere 6 você consegue gerenciar as transações por ele. Como faz muito tempo (quase 3 anos) que não mexo com ele, não me recordo como pode fazer, mas deve ter algum material na net.
Quanto a conexão com BD, ele permite a criação de connection pool, então não será problemas.
F
fdiaz2011
Aqui é uma empresa grande e tem muita burocracia pra mudar tecnologia, mas tava olhando aqui e tem um projeto (único) com struts 1.3 com hibernate 3.
O hibernate está em um modulo Java project. E o struts em um modulo web, logico.
As actions do projeto web utilizam os serviços e dao´s do projeto com hibernate.
As entidades estão no projeto do hibernate e estão com anotação.
Mas achei a arquitetura que criaram pouco confusa e estão fazendo toda transação “na mão”.
No projeto com hibernate tem um GenericBO que chama um GenericDao
e o HibernateSessionFactory
publicclassHibernateSessionFactory{/* Constante de caminho do arquivo de configuração do Hibernate */privatestaticStringDEFAULT_CONFIG_FILE_LOCATION="hibernate.cfg.xml";/* Threads que controlarão a sessão e a transação */privatestaticfinalThreadLocal<Session>threadSession=newThreadLocal<Session>();privatestaticfinalThreadLocal<Transaction>threadTransaction=newThreadLocal<Transaction>();/* Variaveis do Hibernate */privatestaticfinalConfigurationcfg=newAnnotationConfiguration();privatestaticSessionFactorysessionFactory;publicstaticSessiongetCurrentSession()throwsHibernateException{//return new AnnotationConfiguration().configure(DEFAULT_CONFIG_FILE_LOCATION).buildSessionFactory().openSession();returnHibernateSessionFactory.getCurrentSession(DEFAULT_CONFIG_FILE_LOCATION);}//abaixo ficam varios metodos para criar sessão, fechar sessão, dar rollback, commitar, etc}
Dessa forma está funcionando com anotações e etc, mas sugerem algo pra melhorar ?
Eu conseguiria melhorar essa parte do HibernateSessionFactory pra fazer coisas automaticamente ?