欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

mybatis查询数据赋值到model里面为空的解决

时间:2022-10-08 12:55:11|栏目:JAVA代码|点击:

查询数据赋值到model里为空

因为数据多所以在查询中使用分页,但是发现直接执行sql语句是可以获取到数据,而list里面却是空的

<select id="list" resultType="DaliyDO">
        select a1.* from (
            select
                id ,rownum
            from dual 
            <where>
                <if test="id != null and id != ''"> and id = #{id} </if>
            </where>
            <choose>
                <otherwise>
                    order by id desc
                </otherwise>
            </choose>
            ) a1
        <if test="offset != null and limit != null">
            where rownum between #{offset} and #{offset}+#{limit}
        </if>
    </select>

原因是 resultType属性与model不对应。

我们使用分页会在查询值加入一个rownum的值,这个值在我们建立model的时候是没有的,所以只要在model里面加上rownum这个属性就可以。

当然你也可以使用别的分页方法

查询无数据的时候问题

1.如果返回值是List、Map这种集合类,会先执行new语句,再赋值。所以判断是否有数据时,只能用size==0来判断。

2.如果是普通的对象,不会new,所以可以使用是否为null来判断是否有数据。

上一篇:SpringMVC中使用@PathVariable绑定路由中的数组的方法

栏    目:JAVA代码

下一篇:springboot中Getmapping获取参数的实现方式

本文标题:mybatis查询数据赋值到model里面为空的解决

本文地址:http://www.codeinn.net/misctech/215806.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有