前言:今天在对之前的项目进行升级的时候,出现了这样一个问题
### Error querying database. Cause: java.lang.NullPointerException
### The error may exist in file [/Users/xxxx/IDEA-Pr/Hire/UserInformation/target/classes/mapper/EmployeeDao.xml]
### The error may involve com.app.hire.dao.EmployeeDao.selectEmployee
### The error occurred while handling results
### SQL: select e.user_id, e.name, e.age, e.sex, e.employee_desc, e.create_time, e.last_edit_time, e.phone, e.address, e.image, a.area_id, a.area_name, a.area_desc from tb_area a,tb_employee e where a.area_id=e.area_id and e.user_id=?
### Cause: java.lang.NullPointerException] with root cause
这里的报错信息意思是我这个mapper文件中有错,于是我又去运行了没升级版本的代码,结果一模一样的代码,到了这边就不能使用了,之前代码的springboot版本是2.3.7.RELEASE,现在的版本是2.2.2.RELEASE 在经历了两个多小时的疯狂查询后,终于查到了问题所在 在我们的mapper文件中,如果要进行联合查询,会写一个ResultMap来放查询后的结果,这个被联合查询的类有一个属性javaType,设置该对象的现实类 如下图 但是比较奇怪的是,我之前的版本没有加这个javatype也能运行,结果降了版本反而不能运行了,有没有大佬帮忙解答一下是什么原因,是因为SpringBoot版本升级的缘故吗?
结语:大家在写ResulMap的时候,最好把javaType加上,否则这种错误找都没地方找。
|