我正在使用Java和Spring Framework,以及使用hibernate。我编写了一个接口来获取Querys的一些库存资料,一个用于位置,一个用于库存,一个用于产品类型:
public interface ProductInventory extends Inventory<InventoryItem> {
@Query("select i from InventoryItem i, ProductItem c where i.product = c and c.type = ?1")
List<InventoryItem> findByProductType(ProductItem.ProductItem type);
@Query("select i from InventoryItem i, ProductItem c where i.product = c and c.locationid = ?1")
List<InventoryItem> findByProductLocation(long locationid);
}
这是完美的,但现在我想写一个选择ProductType和位置的查询:
@Query("select i from InventoryItem i, ProductItem c where i.product = c and c.type = ?1 and c.locationid = ?1")
List<InventoryItem> findByProductStandortAndType(ProductItem.ProductItemType type, long locationid);
但这不起作用。也许有人可以帮助我?非常感谢
答案 0 :(得分:2)
那你为什么不在查询中使用第二个参数呢?你有&#34;?1&#34;对于第一个参数两次。