美文网首页Java 杂谈
由JPA 的一个错误引起的 java.util.NoSuchEl

由JPA 的一个错误引起的 java.util.NoSuchEl

作者: Java_or_PHP | 来源:发表于2018-04-24 17:12 被阅读180次

程序报:

java.util.NoSuchElementException: null

这是List 的错误,因为使用的JPA,所以首先怀疑是数据库表的字段数量和Java entity 的成员数量不一致。

数了一下,两者的数量是一直的。这种猜想失败。

跟踪到List的代码里,打断点,发现是处理第二个参数的时候,就挂了。这样问题就定位出来了。

    public List<Follow> findByUserUnionId(String unionId) {
        return dao.findByUserUnionId(unionId,0);
    }

调用了的dao的代码:

List<Follow> findByUserUnionId(String userUnionId,Integer delFlag);

正确的应该是:

List<Follow> findByUserUnionIdAndDelFlag(String userUnionId,Integer delFlag);

在编写代码的时候,少了 AndDelFlag , 但参数实际是传了两个,这样在处理的时候就直接报错了。

这个问题比较隐蔽,因为编译是没有任何错误的。运行的时候虽然报了这个错误,但怎么看都没问题。

所以,个人觉得,复杂的情况下,对于JPA 来说,还是使用 @Query 注解比较好,如果出错了,会同时报SQL的错误,这就好定位问题了。

相关文章

  • 由JPA 的一个错误引起的 java.util.NoSuchEl

    程序报: java.util.NoSuchElementException: null 这是List 的错误,因为...

  • @Data注解

    @Data注解,会引起jpa插入数据死循环,看源码.一个坑

  • 五、Spring Boot 之数据访问(二)

    一 、Spring Data JPA      JPA (Java Persistence API) 是由 Hib...

  • SpringBoot学习笔记三 | 整合JPA

    JPA全称(Java Persistence API),JPA 的目标之一是制定一个可以由很多供应商实现的API,...

  • SpringBoot 系列教程 JPA 错误姿势之环境配置问题

    191218-SpringBoot 系列教程 JPA 错误姿势之环境配置问题 又回到 jpa 的教程上了,这一篇源...

  • 由一个视频引起的

    前两天无意中看到一个访谈节目,才知道原来还有这样一个群体。访谈对象是一位少年的父亲,这位父亲成立了一个公益组织,主...

  • 由记忆引起的…

    如果你的记忆可以删除,你愿意删除吗?这世上又有多少人愿意删除呢? 前段时间我看了一部影片,片名叫做《记忆大师》,心...

  • 由失眠引起的……

    因为失眠引起的头疼,在时隔一个多月再次侵袭了我,仿佛在警告我不要再继续这么浑浑噩噩混日子下去一般。生活跟工...

  • 由火锅引起的

    1 说到冬天,就会想到冷,想到吃火锅,各地对火锅的叫法也不同, 四川叫火锅, 广东叫打边炉(想起来第一次见到...

  • 由“火锅”引起的

    围炉聚炊欢呼处,百味消融小釜中 他缓缓地呼出一口气,看热气升腾,飘下的雪花仿佛晶莹起来,“天真冷呀...

网友评论

    本文标题:由JPA 的一个错误引起的 java.util.NoSuchEl

    本文链接:https://www.haomeiwen.com/subject/ztwjlftx.html