• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Spring boot项目出现500错误

武飞扬头像
Hightowger
帮助5

错误展现

学新通
可以看到浏览器显示500,下面是控制台信息
学新通
根据图片显示,下面提醒我们是第63行出现问题
学新通
打印了一下,发现findAll()方法没有做到自己该做的事
学新通
可以看出findAll方法就是一个获取epidemic这个表内容的方法,既然为空,我们就要看看这个数据表的问题,最主要就是看看实体类的变量是否与你的表的键一 一对应,不仅是名称,还有他们的类型,
学新通
当然也不要忘记自己的主键。
我的实体类epidemic

@Data
public class Epidemic {
    /**
     * id主键
     */
    private Long epidemicId;

    /**
     * 城市名称
     */
    private String cityName;

    /**
     * 当前确诊
     */
    private Integer currentConfirmedCount;

    /**
     * 累计确诊
     */
    private Integer confirmedCount;

    /**
     * 疑似确诊
     */
    private Integer suspectedCount;

    /**
     * 治愈人数
     */
    private Integer curedCount;

    /**
     * 死亡人数
     */
    private Integer deadCount;

    /**
     * 高风险数量
     */
    private Integer highDangerCount;

    /**
     * 中风险数量
     */
    private Integer midDangerCount;

    /**
     * 地区id
     */
    private Integer locationId;

    /**
     * 不展示当前曲儿数量
     */
    private Byte notShowCurrentConfirmedCount;

    /**
     * 当前确诊人数的字符串
     */
    private String currentConfirmedCountStr;
}
学新通

对比之后,我发现自己的没有问题,那就很奇怪了,再回到那行代码

  List<Epidemic> all = epidemicServiceImpl.findAll();

findAll咱们暂时没有发现问题,数据库里是有数据的,那我们就要看看这个epidemicServiceImpl变量的问题了,回到这个类变量的声明地方
学新通
其实到这里问题就很明显了,那个epidemicServiceImpl变量是无效的,无效的原因就是少了一个注解@Resource

改过来之后再运行
学新通
数据就出来了,完美解决

总结

我们在学习过程中碰见最多的除了404,几乎就是这个500,有很多大佬说的过于复杂了,其实在出现所谓的空指针而早就的500,更多的就是数据库的问题,自己的表里的键与实体类的变量名,变量类型不一致造成的,还有就是注解的遗忘,这些都是小问题,但我们总是遗忘,就出现了这种实际上很简单但是解决起来比较麻烦的问题

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfhihjc
系列文章
更多 icon
同类精品
更多 icon
继续加载