OrderEntity使用 Spring Dat JPA,我需要查询数据库并根据 astartAmt和 aendAmt金额返回一系列s。我不确定是否应该将这两个变量映射到实体OrderEntity,作为某种类型的单独类/实体/模型中的字段,或者只是在我的本机查询中声明它们。也许我应该使用实现的服务EntityManager.createNativeQuery()?
想做类似的事情:
@Repository
public interface OrderRangeRepository extends JpaRepository<OrderEntity, OrderEntityID> {
@Query(value = "SELECT * FROM Orders WHERE Amount BETWEEN startAmt AND endAmt;" , nativeQuery=true)
List<OrderEntity> findOrdersBy(int startAmt, int endAmt);
}
如果我要EntityManager.createNativeQuery()在服务中使用,也许如下所示:
@Service
public class OrderRangeService {
@Autowired
EntityManager entityManager;
public List<OrderEntity> findAmountsBetween() {
List<OrderEntity> amountsBetween = entityManager.createNativeQuery("SELECT * FROM Orders WHERE Amount BETWEEN ?1 AND 2?;")
.setParameter(1, "startAmt")
.setParameter(2, "endAmt")
.getResultList();
return amountsBetween;
}
}
30秒到达战场
慕沐林林
相关分类