Spring boot Spring Boot JPA获取父级&;小孩
我有两张桌子:Spring boot Spring Boot JPA获取父级&;小孩,spring-boot,spring-data-jpa,spring-boot-test,Spring Boot,Spring Data Jpa,Spring Boot Test,我有两张桌子: @Entity @Table public class ProductEntity extends AbstractEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long productId; @OneToMany(mappedBy = "product", cascade = CascadeType.ALL, orphanR
@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;
}
我首先保存产品和产品项。然后执行上述方法,以获取包含产品项的产品。但我得到的结果是空的
不知道我是否错过了什么。任何帮助都将不胜感激
- 弹簧靴
- H2(
)@DataJpaTest
@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);