Property or field ‘id’ cannot be found on null错误解决

我是在编辑按钮的时候出现500错误,出现500错误一般都是程序逻辑出现了问题。
在这里插入图片描述
在确认前端文件正确无误后,我们走controller-service-mapper路线,查找对应模块功能代码。最终发现,导致500错误的原因是service文件的loadById方法没有实现,返回的是一个空值。这是由于接口和实现类存在不一致,实现类当中提示要add unimplement method,所以自动生成了一个实现方法模板,而没有实现。这一点比较坑,很容易忽视。总之,按照controller-service-mapper路线逐个排查,就一定能够发现错误。

改之前:

 /**
     * 根据ID查询
     *
     * @param id
     * @return
     */
    @Override
    public Score loadById(String id) {
       return null;
    }

改之后:

 /**
     * 根据ID查询
     *
     * @param id
     * @return
     */
    @Override
    public Score loadById(String id) {
        ScoreExample example = new ScoreExample();
        example.createCriteria().andIdEqualTo(id);

        List<Score> scoreList = this.scoreMapper.selectByExample(example);

        return scoreList.isEmpty() ? null : scoreList.get(0);

    }

你可能感兴趣的:(IDEA)