使用MyBatisの3つのメソッドをページング

1.リミットページングの使用

使用MyBatisのは、ページング、コアを実装するSQL

select * from user limit startIndex,pageSize
  1. UserMapperインタフェース

    //分页
    List<User> getUserByLimit(Map<String,Integer> map);
    
  2. Mapper.xml

    <!--分页-->
    <select id="getUserByLimit" parameterType="map" resultMap="UserMap">
        select * from mybatis.user limit #{startIndex},#{pageSize}
    </select>
    
  3. テスト

    @Test
        public void getUserByLimit(){
            SqlSession sqlSession = MyBatisUtils.getSqlSession();
            UserMapper mapper = sqlSession.getMapper(UserMapper.class);
            HashMap<String, Integer> map = new HashMap<>();
            map.put("startIndex",0);
            map.put("pageSize",2);
    
    
            List<User> userList = mapper.getUserByLimit(map);
            for (User user : userList) {
                System.out.println(user);
            }
            sqlSession.close();
        }
    

2、RowBoundsページ

SQL文は、ページングを実装して使用しないでください。

  1. UserMapperインタフェース

    List<User> getUserByRowBounds();
    
  2. mapper.xml

    <!--分页2-->
    <select id="getUserByRowBounds" resultMap="UserMap">
        select * from mybatis.user
    </select>
    
  3. テスト

    @Test
    public void getUserByRowBounds(){
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
        //RowBounds实现
        RowBounds rowBounds = new RowBounds(0, 2);
    
        //通过java代码层面实现分页
        List<User> userList = sqlSession.selectList("com.tt.dao.UserMapper.getUserByRowBounds",null,rowBounds);
    
        for (User user : userList) {
            System.out.println(user);
        }
        sqlSession.close();
    }
    

3、ページネーションプラグイン

ページネーションプラグインpageherlper用途:公式文書https://pagehelper.github.io/docs/howtouse/

公開された31元の記事 ウォン称賛52 ビュー2086

おすすめ

転載: blog.csdn.net/qq_41256881/article/details/105369157