5.mybatis 多参数传递 -分页

需求 :分页
 
方法一:使用下标来进行赋值,下标从零开始
mapper.xml
<select id="selectByPage" resultMap="blogResultMap">
select * from blog limit #{0},#{1}
</select>
接口:mapper
List<Blog> selectByPage(int setOff,int setPageSize);
测试 :Test
@Test
public void testSelectBypage(){
 
SqlSession session = MybatisUtil.getSqlSession();
BlogMapper blogMapper = session.getMapper(BlogMapper.class);
List<Blog> blogList = blogMapper.selectByPage(1, 2);
session.close();
System.out.println("<<<<<------------>>>>>:"+blogList);
 
}
 
方法二:使用注解的方式
mapper.xml
#{setOff},#{setPageSize}必须与注解的名称相同
<select id="selectByPage2" resultMap="blogResultMap">
select * from blog limit #{setOff},#{setPageSize}
</select>
 
接口 mapper mapper中的注解value值与占位符名称一致
List<Blog> selectByPage2(
@Param(value="setOff")int setOff,
@Param(value="setPageSize")int setPageSize);
 
测试:Test
@Test
public void testSelectBypage2(){
SqlSession session = MybatisUtil.getSqlSession();
BlogMapper blogMapper = session.getMapper(BlogMapper.class);
List<Blog> blogList = blogMapper.selectByPage2(1, 2);
session.close();
System.out.println("<<<<<------------>>>>>:"+blogList);
}
 
方法三:使用map(常用)
mapper.xml
<select id="selectByPage3" resultMap="blogResultMap">
select * from blog limit #{setOff},#{setPageSize}
</select>
接口 :mapper
List<Blog> selectByPage3(Map<String,Object> map);
测试 : Test map中key的值必须和mapper.xml中的占位符的名称一致
@Test
public void testSelectBypage3(){
SqlSession session = MybatisUtil.getSqlSession();
BlogMapper blogMapper = session.getMapper(BlogMapper.class);
 
Map<String,Object> map = new HashMap<>();
map.put("setOff", 2);
map.put("setPageSize", 2);
List<Blog> blogList = blogMapper.selectByPage3(map);
session.close();
System.out.println("<<<<<------------>>>>>:"+blogList);
}

希望可以对各位道友有帮助
 

猜你喜欢

转载自www.cnblogs.com/zhukaixin/p/9155913.html
今日推荐