Maison > Problème commun > Quelles sont les différentes manières de paginer dans mybatis ?

Quelles sont les différentes manières de paginer dans mybatis ?

藏色散人
Libérer: 2023-03-13 13:52:02
original
2583 Les gens l'ont consulté

Les trois façons de paginer dans mybatis sont : 1. Utilisez Limit pagination, avec des instructions de base telles que "select * from users limit startIndex,pageSize;" 2. Utilisez RowBounds pour implémenter la pagination, avec des instructions telles que "ListgetUserLRowBounds". ();"; 3. Utilisez le plug-in de pagination "PageHelper" pour y parvenir.

Quelles sont les différentes manières de paginer dans mybatis ?

L'environnement d'exploitation de ce tutoriel : système Windows 10, ordinateur Dell G3.

Quelles sont les différentes manières de pagination dans mybatis ?

Plusieurs méthodes de pagination couramment utilisées dans MyBatis

Pourquoi avons-nous besoin de pagination ?

Si le frontal doit afficher des données, en raison de l'énorme quantité de données et de l'affichage unique, une grande quantité de données apparaîtra sur la page et le chargement risque de ne pas être terminé, ce qui est très inefficace. cette fois, la requête de pagination peut être une bonne solution. Ce problème est d'afficher des données énormes selon un certain nombre, et vous pouvez également afficher d'autres données en cliquant sur la page suivante ou sur la page précédente, ce qui est plus efficace !

Ce qui suit présentera plusieurs requêtes de pagination couramment utilisées dans mybatis !
Tout d'abord, jetez un œil à toutes les données de la base de données. Il y a des annotations dans le code détaillé

Quelles sont les différentes manières de paginer dans mybatis ?

1 Utilisez Limit paging

sql使用的核心语句
Copier après la connexion
-- 语法:表示从startIndex下标开始,一页显示pageSize个
select * from users limit startIndex,pageSize;
-- 语法:表示显示[0,n]范围的数据
select * from users limit n;
Copier après la connexion

Utilisez Mybatis pour implémenter la pagination et implémentez-la basée sur SQL

.

Interface d'écriture

 //分页查询
    List<User> getUserLImit(Map<String,Object> map);
Copier après la connexion

Writing Mapper. xml

<!--    分页查询-->
    <select id="getUserLImit" parameterType="map" resultType="pojo.User">
        select * from firend_mq.users limit #{startIndex},#{pageSize}    </select>
Copier après la connexion

Classe de test

    //测试分页查询
    @Test
    public  void getUserLImit(){
        SqlSession sqlSession = Mybatisutil.getSqlSession();
        UserDao mapper = sqlSession.getMapper(UserDao.class);

        Map<String, Object> map = new HashMap<>();
        map.put("startIndex",0);
        map.put("pageSize",3);
        List<User> userLImit = mapper.getUserLImit(map);
        for (User user : userLImit) {
            System.out.println(user);
        }
        sqlSession.close();
    }
Copier après la connexion

résultats de requête :

Quelles sont les différentes manières de paginer dans mybatis ?

2.

, basé sur le code Java

interface d'écriture

//RowBounds实现分页查询
    List<User> getUserLRowBounds();
Copier après la connexion

Writing Mapper. xml, requête En fait, ce sont tous les utilisateurs

   <!--   RowBounds 分页查询-->
    <select id="getUserLRowBounds"  resultType="pojo.User">
        select * from firend_mq.users    </select>
Copier après la connexion

Classe de test

    //RowBounds分页查询
    @Test
    public  void getUserLRowBounds(){
        SqlSession sqlSession = Mybatisutil.getSqlSession();
        //RowBounds对象  参数(起点,个数)
        RowBounds rowBounds = new RowBounds(2, 3);

        //通过java代码层面实现分页,第一个参数是接口类的方法路径
        List<User> userlist = sqlSession.selectList("dao.UserDao.getUserLRowBounds", null, rowBounds);
        for (User user : userlist) {
            System.out.println(user);
        }
        sqlSession.close();
    }
Copier après la connexion
Résultat :

Quelles sont les différentes manières de paginer dans mybatis ?

3. Si vous êtes intéressé, vous pouvez le découvrir. Voici le lien du site officiel du plug-in. Il existe un site officiel. Utilisez la documentation pour en savoir plus sur le

plugin de pagination PageHelper

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal