我有像这样的产品的实体类:
@Entity
public class Product {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer ID_product;
@NotNull
private String prodName;
@NotNull
private String prodDesc;
@NotNull
private Integer price;
@NotNull
private String prodBrand;
@NotNull
private String prodImage;
@ManyToOne
private Category category;
我想让控制器看起来像这样:
List<Product> productList = productRepository.findByProdNameOrProdBrandContains(search);
model.addAttribute("products" , productList);
如果我想搜索prodName或prodBrand的关键字,如何在我的存储库中编写findBy方法?我想象这样的事情:
List<Product> findByProdNameOrProdBrand(String prodName || String prodBrand);
我是否必须创建不同的功能/模型或其他东西,如果是这样,我如何在我的百里香中使用两种功能/模型?任何帮助表示赞赏。提前谢谢。
答案 0 :(得分:0)
只需在存储库中创建以下方法:
List<Product> findByProdNameOrProdBrand(String prodName, String prodBrand);
但我建议您在超过3个条件的查询时切换到Sepcification<T>
。