tenho uma aplicação web aonde uso JPA+Hibernate+c3po para persistência dos dados, no entanto, para relatórios prefiro trabalhar passando apenas o DS, existe algum problema em usar as duas formas de conexão ao mesmo tempo?
JPA para persistência e JDBC para relatórios
6 Respostas
Não.
Mas é aconselhável utilizar o JPA em tudo pois assim você pode utilizar do cache dele. [=
jakefrog,
obrigado pela resposta mas, tem como com o JPA eu passar uma conexão para o relatório?
Nos exemplos que já encontrei todos passam a coleção de dados…
jakefrog,Mas esse é o correto.obrigado pela resposta mas, tem como com o JPA eu passar uma conexão para o relatório?
Nos exemplos que já encontrei todos passam a coleção de dados…
Não é legal ficar passando conexão para lá e para cá. JPA não expõe a conexão JDBC, ele mascara e trata tudo dentro dele.
jakefrog,
mais uma vez obrigado!
jakefrog,Não sei se te ajuda, mas caso você tenha objetos distintos para o relatório (não entities do JPA) você poderia fazer uma native query (assim você continua utilizando do SQL já pronto) e fazer com o JPA injete esses valores dentro da classe.mais uma vez obrigado!
Vamos supor que você tenha a entidade Pessoa que tenha apenas a data de nascimento. Mas no seu relatório você exibe a idade numérica tipo 40 anos. Aí caso você faça essa conta no SQl você poderia fazer algo do tipo
select new com.report.PessoaReport(nome, FUN_CALCULA_IDADE(idade)) from…
Desse modo você terá a classe com tudo pronto.
Aqui mostra mais sobre essa abordagem: JPA Consultas e Dicas
jakefrog,
Muito obrigado, a dica foi valiosa!!
Eu não gostei da abordagem de objetos no ireport, e acho que a solução será com native query mesmo…