一尘不染

JPA还是使用Oracle表分区休眠?

hibernate

我需要在应用程序中使用实体框架,并且在Oracle数据库中使用了表分区。使用简单的JDBC,我可以从特定分区中选择数据。但是我不知道我是否可以使用hibernate或Eclipse链接(JPA)进行相同操作。如果有人知道该怎么做,请告诉我。

通常是JDBC-SQL中的select语句,

select * from TABLE_NAME partiton(PARTITON_NAME) where FIELD_NAME='PARAMETER_VALUE';

如何使用Hibernates或JPA进行同样的操作?

请至少分享一个学习资源的链接。

谢谢!!!


阅读 252

收藏
2020-06-20

共1个答案

一尘不染

JPA或任何其他ORM框架本身都不支持Oracle分区表(据我所知)。

但是,根据问题的性质,可能有不同的解决方案:

  • 重构您的类,以便在现实生活中需要区别对待的数据属于一个单独的类。有时,这称为垂直分区(分区不是跨行,而是跨列)。
  • 在下面使用Oracle分区表,并使用本机SQL查询或JPA中的存储过程。这只是一个可能的解决方案(我还没有尝试过)。
  • 使用hibernate碎片。尽管Hibernate Shards的典型用例不是单个数据库,但它向应用程序开发人员提供了分布式数据库的单一视图。

相关

  1. JPA性能,不要忽略数据库
2020-06-20