JPA& JDBC可以在DAO层中共存吗?

时间:2013-09-19 06:40:41

标签: spring jpa jdbc

使用JDBC(JdbcTemplate)和&存在任何问题吗?数据访问层中的JPA(EntityManager)?

我打算使用JDBC来访问存储过程/例程。 这些存储过程将通过连接多个表(未注册为JPA实体)返回多个游标。

这些JDBC操作纯粹是只读的。

我没有合并JPA&与给定here

相同的事务中的JDBC操作

1 个答案:

答案 0 :(得分:3)

对我来说没问题。使用合适的工具完成工作。例如,如果我想做一些数据跨越许多不同实体的报告查询,或者想要使用JPA不支持或难以实现的一些强大的数据库功能(例如窗口函数,公用表表达式),我我更愿意使用JDBC直接发出本机SQL来完成工作。

架构CQRS也使用这个想法,它有两个不同的单独模型来更新信息(命令操作)和读取信息(查询操作)。例如,JPA可用于命令操作,而使用本机JDBC用于查询操作。