我有一个像这样的自定义查询
List<Product> findBypropertyIdAndIdInAndCreateDateGreaterThanEqual(Integer propertyId, List<Integer> ids, Date createDate);
打开Log4j后,我在日志中看到参数不匹配。
例如在我看到的日志中
[Trace] org.hibernate.type.descriptor.sql.BasicBinder - binging parameter [2] as [INTEGER] - [12]
[Trace] org.hibernate.type.descriptor.sql.BasicBinder - binging parameter [3] as [INTEGER] - [3]
[Trace] org.hibernate.type.descriptor.sql.BasicBinder - binging parameter [3] as [TIMESTAMP] - [2019-05-01]
对于我传入的3个参数,这些参数是正确的,但是它们作为参数2、3和3而不是1、2和3出现。因此查询返回空结果。
因此在此测试用例中:
Integer propertyId = "12"
List<Integer> ids = 3 (it only has one integer in this case)
Date createDate = 2019-05-01
所以我对为什么会这样感到困惑。为什么它们不匹配?为什么参数3与参数2和参数3绑定两次?
我在编译代码时打开了Log4j,但是结果没有从数据库返回。