gpt4 book ai didi

java - 使用 JPA 存储库查询三个属性

转载 作者:行者123 更新时间:2023-12-02 02:18:02 26 4
gpt4 key购买 nike

我有以下 LineItem 模型,我想创建一个查询,为我提供具有这三个给定过滤器的所有 LineItem:Order.ordered (date), LineItem.price(BigDecimal)Product.idProduct(长整型)

@Entity
@Table(name = "lines_item", catalog = "orders_app")
public class LineItem implements java.io.Serializable {

private Long idlinesItem;
private Product product;
private Order order;
private Integer quantity;
private BigDecimal price;

public LineItem() {
}

我正在使用 JPA 存储库

import org.springframework.data.jpa.repository.JpaRepository;
public interface LineItemRepository extends JpaRepository<LineItem, Long>{
List <LineItem> findByOrderOrdered(Date ordered);//<--somethiglikethis
}

最佳答案

您的查询方法类似于:

List <LineItem> findByOrder_OrderedAndPriceAndProduct_IdProduct(Date ordered, BigDecimal price, Long productId);

引用here详细了解查询方法。

对于此类复杂的查询,不要使用更长的方法名称,正如 @scary-wombat 建议的那样,您可以使用带有 @Query 的 JPA 查询,如下所示。

Query("select item from LineItem item where order.ordered = :ordered and item.price = :price and product.idProduct = : productId")
List <LineItem> findByOrderAndPriceAndProduct(Date ordered, BigDecimal price, Long productId)

请注意,尽管您已经有了想法,但上述查询尚未经过测试。

关于java - 使用 JPA 存储库查询三个属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48981572/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com