mybatis逆向工程如何分页的一种方法

原创 2018年04月15日 21:45:57

前言:在使用逆向工程时,发现并没有自动生成相关的分页操作,经过查询之后发现需要自己实现。

实现如下

第一步、在生成的Example类中添加两个属性,offset表示起始位置,limit表示查询条数,并生成对应的get 和set方法

   
    //加入 offset 起始位置  和 limit 查询页数  用来分页
    protected int offset;
    
    protected int limit;
    /*
     * 生成 offset 和 limit 的set get 方法
     */
	public int getOffset() {
		return offset;
	}

	public void setOffset(int offset) {
		this.offset = offset;
	}

	public int getLimit() {
		return limit;
	}

	public void setLimit(int limit) {
		this.limit = limit;
	}
    

第二步、在对应的mapper.xml文件中,找到selectByExample方法,在方法中添加如下的代码


  <if test="offset != null && limit != null">
    limit ${offset},${limit}
    </if>

例子如下:

  <select id="selectByExample" resultMap="BaseResultMap" parameterType="com.zhy.eduPlatform.pojo.AdminExample" >
    select
    <if test="distinct" >
      distinct
    </if>
    <include refid="Base_Column_List" />
    from admin
    <if test="_parameter != null" >
      <include refid="Example_Where_Clause" />
    </if>
    <if test="orderByClause != null" >
      order by ${orderByClause}
    </if>
    <if test="offset != null && limit != null">
    limit ${offset},${limit}
    </if>
  </select>
第三步、使用
	/* 查询普通管理员列表,传入起始位置和查询数目
	 * (non-Javadoc)
	 * @see com.zhy.eduPlatform.service.AdminService#queryAdminList(int, int)
	 */
	public List<Admin> queryAdminList(Integer  offset, Integer  limit,String adminName, Integer  adminId) {
		// TODO Auto-generated method stub
		AdminExample ae = new AdminExample();
		Criteria criteria  = ae.createCriteria();
		if(!"".equals(adminName) && adminName != null){
			criteria.andAdminNameLike("%" + adminName + "%");
		}
		if(adminId != Dic.NO_INPUT_ID){
			criteria.andAdminIdEqualTo(adminId);
		}
		ae.setOffset(offset);
		ae.setLimit(limit);
		List<Admin> adminList  =  am.selectByExample(ae);
		return adminList;
	}
在使用时传入offset和limit的值,返回的list便是limit条数的数据



如何用Mybatis逆向工程实现分页查询

如何用Mybatis逆向工程实现分页查询一个很简单的方法,如果要mysql实现分页查询的话,执行下述语句即可 select * from table limit (offset)5,(l...
  • weixin_35891116
  • weixin_35891116
  • 2016-12-19 09:46:55
  • 925

mybatis使用逆向工程时分页插件的使用

一、使用场景 查询的表:tb_item 单表查询sql:SELECT * from tb_item LIMIT 0,10 需要实现分页,使用逆向工程,可以使用mybatis的分页插件。 二、原理  ...
  • u012184337
  • u012184337
  • 2017-03-28 15:09:59
  • 1483

oracle mysql 的mybatis 逆向工程中的分页查询的写法

mysql 分页在mybatis 中的实现 select distinct from tb_item ${exampl...
  • zona_wzq
  • zona_wzq
  • 2016-12-01 09:47:06
  • 1949

解决Mybatis 分页插件pagehelper不支持逆向工程Example条件查询

解决Mybatis 分页插件pagehelper不支持逆向工程Example条件查询 下载地址:http://download.csdn.net/detail/jlh912008548/9492873...
  • jlh912008548
  • jlh912008548
  • 2016-04-16 11:01:57
  • 4563

关于mybatis的逆向工程中分页配置

关于mybatis的逆向工程中分页配置 因为在使用PageHelper插件的时候出现了异常的问题,所以考虑在数据库查询的时候直接进行分页操作,也就是在配置中添加limit,首先把我遇到的分页问题描述...
  • rico_rico
  • rico_rico
  • 2018-03-01 15:35:53
  • 39

SpringMVC+Mybatis实现的SqlServer整合逆向工程Example类分页带条件数据查询

  • 2018年02月08日 12:48
  • 31KB
  • 下载

MyBatis逆向工程 & 生成的Mapper的使用方法

MyBatis逆向工程 & 生成的Mapper的使用方法
  • diyu122222
  • diyu122222
  • 2017-09-28 14:36:15
  • 447

支持条件查询的Mybatis分页插件

  • 2016年04月16日 10:59
  • 159KB
  • 下载

【MyBatis框架】mybatis逆向工程自动生成代码

逆向工程 1.什么是逆向工程 mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper....
  • u013517797
  • u013517797
  • 2015-07-16 09:38:59
  • 17952

Mybatis逆向工程的使用方法

一、什么是MyBatis逆向工程 简单的解释就是通过数据库中的单表,自动生成java代码。 我们平时在使用Mabatis框架进行Web应用开发的过程中,需要根据数据库表编写对应的P...
  • lisongjia123
  • lisongjia123
  • 2016-04-25 17:50:36
  • 7420
收藏助手
不良信息举报
您举报文章:mybatis逆向工程如何分页的一种方法
举报原因:
原因补充:

(最多只允许输入30个字)