它如何返回 可选<列表<VO>>来自 mybatis



我不会说英语。

因为英语不流利。

我想在映射器中使用可选

喜欢这个

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

能做什么我不知道我错过了什么?

感谢您的阅读

借出你的智慧。

删除Optional

你的框架/库抱怨他从数据库中得到了太多的结果,但你要求他压缩到只有一个(可选(变量。

您只需在希望从数据库获得一个结果或没有结果时使用Optional

对于列表,

只需保持原样,大多数框架/库将为您返回一个空列表。

最新更新