问题描述
我有 2 张桌子:
@Entity
@Table
public class ProductEntity extends AbstractEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long productId;
@OnetoMany(mappedBy = "product",cascade = CascadeType.ALL,orphanRemoval = true,fetch = FetchType.LAZY)
private Set<ProductItemEntity> productItems;
}
@Entity
@Table
public class ProductItemEntity extends AbstractEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long itemId;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "PRODUCT_ID",nullable = false)
private ProductEntity product;
@Column(name="PRODUCT_RATE") // Unique
private Integer productRate;
}
我正在尝试运行一个测试,我通过 productId 和 productRate 进行查询,如下所示:
@Query("SELECT p FROM ProductEntity p JOIN FETCH p.productItems pi WHERE p.productId = :productId AND pi.productRate = :rate ")
ProductEntity findByProductAndrate(@Param("productId") Long productId,@Param("rate") Integer rate);
我先保存产品和产品项目。然后执行上述方法以获取带有产品项目的产品。但我得到空结果。
不知道我是否遗漏了什么。任何帮助将不胜感激。
- Spring Boot
- H2 (
@DataJpaTest
)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)