Operator SIMPLE_PROPERTY on rid requires a scalar argument, found interface java.util.List in method

jpa上的坑

📢📢📢📣📣📣
哈喽!大家好,我是「奇点」,江湖人称 singularity。刚工作几年,想和大家一同进步🤝🤝
一位上进心十足的【Java ToB端大厂领域博主】!😜😜😜
喜欢java和python,平时比较懒,能用程序解决的坚决不手动解决😜😜😜

✨ 如果有对【java】感兴趣的【小可爱】,欢迎关注我

❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️
————————————————

如果觉得本文对你有帮助,欢迎点赞,欢迎关注我,如果有补充欢迎评论交流,我将努力创作更多更好的文章。

今天使用jpa使用了批量查询的方法遇到了下面的问题:

Operator SIMPLE_PROPERTY on rid requires a scalar argument, found interface java.util.List in method

Caused by: java.lang.IllegalStateException: Operator SIMPLE_PROPERTY on rid requires a scalar argument, found interface java.util.List in method public abstract java.util.List com.example.demo.Dao.AdminRolePermissionDao.findAllByRid(java.util.List).
    at org.springframework.data.jpa.repository.query.PartTreeJpaQuery.throwExceptionOnArgumentMismatch(PartTreeJpaQuery.java:171) ~[spring-data-jpa-2.4.2.jar:2.4.2]
    at org.springframework.data.jpa.repository.query.PartTreeJpaQuery.validate(PartTreeJpaQuery.java:147) ~[spring-data-jpa-2.4.2.jar:2.4.2]
    at org.springframework.data.jpa.repository.query.PartTreeJpaQuery.<init>(PartTreeJpaQuery.java:90) ~[spring-data-jpa-2.4.2.jar:2.4.2]
    ... 43 common frames omitted

从表面的意思我们可以看出操作要求的是简单的参数,但是获取到的是List,可以大致定位问题,传的参数和需要的参数不一致导致的问题,

List<AuthAuditPo> findAllByTenantIdAndAuthSubjectAndUserId( String tenantId, Integer authSubject,List<String> userIds);

解决方法是在批量查询的时候批量的字段后面加一个In就好了

List<AuthAuditPo> findAllByTenantIdAndAuthSubjectAndUserIdIn( String tenantId, Integer authSubject,List<String> userIds);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智达教育‍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值