今天写代码的时候遇到一个非常傻的错误,代码目的:是在一个表里,通过subject_id来分类查找学科详情,正确返回如下:
表结构如下:
原因如下
问题:
第一应该返回次数是2,
但是只执行了一次subject_id=3,并且报了一个null空异常,非常的奇怪
错误log:
Caused by: org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: java.lang.UnsupportedOperationException
### The error may exist in file [F:\Huaicai-GXDZ\hucais-customized-channe\target\classes\mapper\KnowledgeCategoryMapper.xml]
### The error may involve com.hucais.infra.mapper.KnowledgeCategoryMapper.selectName
### The error occurred while handling results
### SQL: select category_name from customized_knowledge_category where subject_id = ?
### Cause: java.lang.UnsupportedOperationException
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30) ~[mybatis-3.5.6.jar:3.5.6]
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:149) ~[mybatis-3.5.6.jar:3.5.6]
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) ~[mybatis-3.5.6.jar:3.5.6]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_211]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_211]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_211]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_211]
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) ~[mybatis-spring-2.0.6.jar:2.0.6]
... 155 common frames omitted
Caused by: java.lang.UnsupportedOperationException: null
at org.apache.ibatis.reflection.wrapper.CollectionWrapper.findProperty(CollectionWrapper.java:48) ~[mybatis-3.5.6.jar:3.5.6]
at org.apache.ibatis.reflection.MetaObject.findProperty(MetaObject.java:85) ~[mybatis-3.5.6.jar:3.5.6]
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.createAutomaticMappings(DefaultResultSetHandler.java:549) ~[hzero-starter-mybatis-mapper-1.11.1.RELEASE.jar:3.5.6]
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.applyAutomaticMappings(DefaultResultSetHandler.java:573) ~[hzero-starter-mybatis-mapper-1.11.1.RELEASE.jar:3.5.6]