我不是说英语的人。
因为英语不流利。
我想在Mapper中使用Optional
像这样public interface TestMapper {
@Transactional(readOnly = true)
Optional<List<VO>> selectDataOpt();
}
<select id="selectDataOpt" resultType="VO">
SELECT ID, NAME, CALL_NUM
FROM USER
ORDER BY INSERTDATE ASC
LIMIT 100
</select>
但mybatis打印异常消息
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 21
我能做什么我不知道自己错过了什么?
感谢您阅读
借助你的智慧。
答案 0 :(得分:0)
删除Optional
。
你的框架/ lib抱怨他从DB得到太多结果但是你要求他压缩到只有一个(可选)变量。
如果您希望从DB获得一个或没有结果,则只需使用Optional
。
对于列表,只要保持原样,大多数框架/ lib将为您返回一个空列表。