[quote=jomello_br]Olá amigos,
Vamos imaginar uma aplicação web/Desktop feita em 3 camadas, sendo que utilizo o Hibernate + JPA.
Até ai tudo bem, mas e se eu no meio precise e/ou queira utilizar um ResultSet, como isso pode e se pode prejudicar a minha aplicação??
Vamos trabalhar com sei lá, 100 conexões por hora ok.
Abraços
Jomello[/quote]
Não é pecado algum misturar as duas coisas, desde que você saiba o que está fazendo. Por exemplo, algumas perguntas básicas:
Você pretende implantar a mistura através do DP DAO, certo?
Você sabe que o Hibernate tem certas estratégias de caching e que, se você fizer algumas operações diretamente no banco, ele não vai enxergar essas operações automaticamente, certo?
Você sabe que, para fazer isso dar certo, precisa de alguns dias de análise, para que seu projeto continue sendo tão flexível com JDBC quanto é com Hibernate, certo?
Você tem consciência de que, na maioria dos casos, isso é absolutamente desnecessário (lembrando de que eu não conheço o seu caso), certo ?
Feitas estas considerações, se a resposta for sim para todas, vai fundo!
Você pretende implantar a mistura através do DP DAO, certo? sim
Você sabe que o Hibernate tem certas estratégias de caching e que, se você fizer algumas operações diretamente no banco, ele não vai enxergar essas operações automaticamente, certo?
[b]Então aqui que fica a minha grande duvida, se eu fizer isso:
Query q = em.createNativeQuery(cSql, CepEndereco.class);
q.setHint(“org.hibernate.cacheMode”, CacheMode.REFRESH);
q.setHint(“org.hibernate.cacheable”, true);
Atéonde entendo ele vai dar um reload e me trazer qualquer coisa que eu tenha feito via ResultSet… certo???[/b]
Você sabe que, para fazer isso dar certo, precisa de alguns dias de análise, para que seu projeto continue sendo tão flexível com JDBC quanto é com Hibernate, certo?
[/b]sim … claro [b]
Você tem consciência de que, na maioria dos casos, isso é absolutamente desnecessário (lembrando de que eu não conheço o seu caso), certo ?
[/b] Então, acontece que existe situações e situações em programação e infelizmente seja por falta de conhecimento ou seja po burrice pura tem certas coisas que só consegui resolver via ResultSet e como voce sabe nosso tempo é excasso, mas se de repente vou lá na frente me prejudicar mais ainda, ai então prefiro me ferrar aqui atrás ok amigo
Então… quando você disse ResultSet, pensei que você queria usar o ResultSet do JDBC. Isso não é um ResultSet, é uma Query, e é perfeitamente compatível com JPA/Hibernate. A preocupação aqui é o que você vai passar como Query, porque de repente você não precisa nem criar uma query nativa.