springmvc+mybatis 做分页sql 语句实例代码
废话不多说了,直接给大家贴代码了,具体代码如下所示:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="ssmy.dao.UserDao"> <resultMap type="ssmy.dto.User" id="User"> <!--<resultMap type="User" id="User"> 如果在sprin文件里配置初始化 mybatis里配置了别名就是有--> <!-- 用id属性来映射主键字段 --> <id property="id" column="id" jdbcType="INTEGER"/> <!-- 用result属性来映射非主键字段 --> <result property="userName" column="userName" jdbcType="VARCHAR"/> <result property="password" column="password" jdbcType="VARCHAR"/> <result property="trueName" column="trueName" jdbcType="VARCHAR"/> <result property="email" column="email" jdbcType="VARCHAR"/> <result property="phone" column="phone" jdbcType="VARCHAR"/> <result property="roleName" column="roleName" jdbcType="VARCHAR"/> </resultMap> <!--分页返回类型list 可以使用map User对应的是resultMap size每页的大小--> <select id="find" resultMap="User" parameterType="Map"> select t2.* from ( select t1.*,rownum rn from t_user t1 <where> <if test ="userName !=null and userName !='' "> t1.userName like '%'||#{userName,jdbcType=VARCHAR}||'%' </if> </where> ) t2 <where> <if test ="start !=null and start !=''"> <![CDATA[and t2.rn >=#{start}]]> </if> <if test ="size !=null and size !=''"> and <![CDATA[t2.rn <=#{size}]]> </if> </where> </select> <!--获取总记录数 --> <select id="getTotal" parameterType="Map" resultType="java.lang.Integer"> select count(1) from t_user <where> <if test ="userName !=null and userName !='' "> userName like '%'||#{userName,jdbcType=VARCHAR}||'%' </if> </where> </select> <!--<insert id="createser" parameterType="User"> insert into NEWS_USER (id,username,password,email,usertype) values (#{id,jdbcType=NUMERIC},#{username,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR},#{email,jdbcType=VARCHAR},1) <selectKey resultType="int" order="BEFORE" keyProperty="id"> select seq_id.nextval from dual </selectKey> </insert>--> </mapper>
以上所述是小编给大家介绍的springmvc+mybatis 做分页sql 语句实例代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
赞 (0)