Hibernate JPA返回重复记录

时间:2018-06-10 10:08:52

标签: spring-mvc spring-data-jpa

我正在构建一个Spring rest API,它将返回促销信息(promo_code,promo_description,efective_date,expiration_date),我有像吹的表结构

PROMO_DETAIL
  SEQ_NO NUMBER(9), //PK
  PROMO_CODE VARCHAR2(9), //PK
  PROMO_DESCRIPTION VARCHR2(100), 
  EFFECTIVE_DATE DATE,
  EXPIRATION_DATE DATE

我正在使用具有promo_code,promo_description,effective_date和expiration_date的实体类。我用@Id注释了promo_code。我直接将实体类作为响应返回。

问题是当有2条记录具有相同的促销代码(但具有不同的其他字段的值)。虽然在这种情况下,JPA返回两条记录,但两条记录都具有所有字段的重复值。

此处也提出了同样类型的问题" JPA/Hibernate select query returning duplicate records"

解决方案是在实体中组合密钥。

我不想将seq_no添加到实体类,因为响应中不需要它。 我也不想创建不必要的单独响应模型类。它将创建将实体映射到模型类的额外开销。

这个问题还有其他解决办法吗?

0 个答案:

没有答案