【发布时间】:2014-08-30 23:01:50
【问题描述】:
我有一个非常基本的问题,我确信有一个非常简单的解决方案。
我有两个实体在数据库级别具有多对多关系。
Customer 和 Channel 加入了 Customer_Channel。
我不是 java 持久性标准和休眠的专家,这是一个更大的应用程序的一部分。
现在我必须将这种关系引入客户。所以我应该为客户建模List<Channels> or List<Customer_Channels>,使其成为多对多关系或一对多关系。
我在 Channel Entity 中不需要任何东西。
现在我需要创建一个条件查询来获取属于特定渠道的客户。一个非常简单的 SQL 将是
Select Customer from Customer, Channel, Customer_Channel where Customer.ID=Customer_Channel.CustomerID and Customer_Channel.ChannelID=Channel.ID and Channel.ID = ?
或者一个非常直接的可能是
Select Customer from Customer, Customer_Channel where Customer.ID=Customer_Channel.CustomerID and Customer_Channel.ChannelID=?
那么在这种情况下采取哪种方法以及标准查询是什么。我的项目不使用 MetaModel 类。
非常感谢您的帮助
【问题讨论】:
-
谢谢宙斯,我已经检查了上述问题的解决方案,这类似于我的观点,但是有没有办法通过谓词来做到这一点,我的项目已经有了这些东西,而且不使用 sql。最好使用 API 而不是 sql,因为这将直接适合现有的 API
标签: java hibernate jpa many-to-many hibernate-criteria