mybatis分页及模糊查询功能实现
2017-06-01 15:38
776 查看
mybatis中分页有3种方式来实现,通过sql语句(两种传参方式)来实现,通过mybatis 的 Rowbounds 来实现。
通过(自定义类型)传参 来实现分页:
映射文件:
<select id="findListBypage" parameterType="cn.wh.util.PageUtil" resultType="Role"> select * from t_role limit #{index},#{size} </select>
测试代码:
/** * 通过自定义类型来传参 实现分页功能 需要新建一个类型 */ @Test public void testPage1(){ PageUtil pu = new PageUtil(); pu.setIndex(3); pu.setSize(3); List<Role> list = session.selectList("cn.wh.mapper.RoleMapper.findListBypage", pu); for(Role r:list){ System.out.println(r.getName()); } }
通过map传参实现:
映射文件:
<select id="findListBypage" parameterType="map " resultType="Role"> select * from t_role limit #{index},#{size} </select>
测试代码:
/** * 可以通过map来传参 这样可以不用新建新的类型 */ @Test public void testPage2(){ Map<String,Integer> map = new HashMap<String,Integer>(); map.put("index", 0); map.put("size", 3); List<Role> list = session.selectList("cn.wh.mapper.RoleMapper.findListBypage", map); for(Role r:list){ System.out.println(r.getName()); } }
通过RowBounds来实现分页:
映射文件:
<select id="findAll" resultType="Role"> select * from t_role </select>
测试代码:
/** * 使用rowBounds来实现分页 */ @Test public void testPage3(){ //第一个参数 是index,开始下标 //第二个参数 是size,每页显示记录数 RowBounds bounds = new RowBounds(3, 3); List<Role> list = session.selectList("cn.wh.mapper.RoleMapper.findAll", null,bounds); for(Role r:list){ System.out.println(r.getName()); } }
注意:通常情况下使用 Map 传参来实现分页
模糊查询
映射文件:
<select id="selectLike" parameterType="string" resultType="Role"> select *from t_role where name like #{name} </select>
测试代码:
/** * 模糊查询 */ @Test public void testLike1(){ List<Role> list = session.selectList("cn.wh.mapper.RoleMapper.selectLike","%会员"); for(Role r:list){ System.out.println(r.getName()); } }
第二种方式:
<select id="selectLike1" parameterType="string" resultType="Role"> select *from t_role where name like concat(#{name},'%'); </select>
测试代码:
/** * 模糊查询 */ @Test public void testLike2(){ List<Role> list = session.selectList("cn.wh.mapper.RoleMapper.selectLike1","黄"); for(Role r:list){ System.out.println(r.getName()); } }
注意:通常使用第二种方式实现模糊查询
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- Mybatis实现简单的分页,以及基本的查询修改功能
- MyBatis实现动态查询、模糊查询功能
- jQuery基于xml格式数据实现模糊查询及分页功能的方法
- 在mybatis中实现oracle分页和模糊查询
- AngularJS+Bootstrap 分页功能实现,同时支持模糊查询分页
- 家庭财务管理系统实战4- mybatis分页查询功能改进实现
- winform实现combox控件自动匹配查找,模糊查询功能
- 使用全文索引技术实现高效的like模糊查询功能
- 一段asp查询xml的代码,实现了无刷新查询,模糊查询功能。
- JQuery实现基于Ajax的数据查询、排序和分页功能
- mybatis接口式的模糊查询、分页、增删改、事务处理
- (J2EE)Struts+Spring+MyBatis整合实现分页分页查询
- android分页查询功能工具类的实现
- 通过bboss persistent框架实现数据库分页查询功能
- phpcmsv9多表联合查询分页功能实现
- MyBatis简单的增删改查以及简单的分页查询实现
- mybatis高级应用系列一:拦截器实现分页功能
- oracle中使用触发器实现查询分页功能
- 存储过程实现模糊查询分页
- Hibernate分页的实现(支持模糊查询)