1. 程式人生 > >spring data jpa 多對一聯表查詢

spring data jpa 多對一聯表查詢

資料庫:

實體類:

public class Product {
    @Id
    @GeneratedValue
    private Long id;
    private String name;
    private Double price;
    private String standerd;
    private String code;
    private String srcPath;
    @ManyToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "user_id")
    private
User user; public User getUser() { return user; } public void setUser(User user) { this.user = user; } //其他setter,getter省略

Repository :

public interface ProductRepository extends JpaRepository<Product,Long> {
    @Query("select p from Product p join p.user u  where  u.id=?1 "
) List<Product> findByUserId(@Param("userId") Long userId); }

controller:

@PostMapping("/findProductByUserName")
    public List<Product> findProductByName(@RequestParam("name")String name){
        User user=userService.findByProperty(name);
        List<Product> productList=productService.findByUserId(user.getId());
        return
productList; }

前端post請求測試:
這裡寫圖片描述