zoukankan      html  css  js  c++  java
  • Mybatis的分页查询

    Mybatis的分页查询

    (1)无条件的分页

    mapper文件配置和Java代码实现

    <!-- 传入的参数类型为map,此时无需使用map.get("key")去获得实际值,只需填入key值便可 -->
        <select id="findByPage" parameterType="map" resultMap="studentMap">
            select id,name,age,sex from student
            limit #{start},#{end}
        </select>
    /*
         * 无条件分页查询
         */
        public List<Student> findByPage(int start,int end)
        {
            SqlSession sqlSession = null;
            try{
                sqlSession = MyBatisUtil.getSqlSession();
                
                Map<String,Object> param = new LinkedHashMap<String,Object>();
                param.put("start",start);
                param.put("end",end);
                
                List<Student> stuList;
                stuList = sqlSession.selectList(Student.class.getName()+".findByPage", param);
                
                System.out.println("添加查询成功");
                
                return stuList;
            }catch(Exception e){
                e.printStackTrace();
                throw e;
            }finally{
                MyBatisUtil.closeSqlSession();
            }
        }

    (2)有条件的分页

    mapper文件配置和Java代码实现

    <select id="findByPageAndRequest" parameterType="map" resultMap="studentMap">
            select id,name,age,sex from student
            where name like #{name}
            limit #{start},#{end}
        </select>
    /*
         * 有条件分页查询
         */
        public List<Student> findByPageAndRequest(String name,int start,int end)
        {
            SqlSession sqlSession = null;
            try{
                sqlSession = MyBatisUtil.getSqlSession();
                Map<String,Object> params = new LinkedHashMap<String,Object>();
                //当sql的条件有模糊匹配时,参数需前后带上%
                params.put("name", "%"+name+"%");
                params.put("start", start);
                params.put("end", end);
                
                List<Student> stuList;
                stuList = sqlSession.selectList(Student.class.getName()
                        +".findByPageAndRequest", params);
                
                System.out.println("添加查询成功");        
                return stuList;
            }catch(Exception e){
                e.printStackTrace();
                throw e;
            }finally{
                MyBatisUtil.closeSqlSession();
            }
        }
  • 相关阅读:
    浏览器缓存机制
    es6笔记(6) Iterator 和 for...of循环
    es6笔记(3.1)三个点的“...”的作用
    es6笔记(5)Map数据结构
    es6笔记(4) Set数据结构
    SpringBoot事件监听
    SpringBoot入门
    五大常用算法之三贪心算法
    五种常用算法之二:动态规划算法
    五大常用算法之一:分治算法
  • 原文地址:https://www.cnblogs.com/linhongwenBlog/p/12772586.html
Copyright © 2011-2022 走看看