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 "List
getUserLRowBounds". ();"; 3. Utilisez le plug-in de pagination "PageHelper" pour y parvenir.
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é
sql使用的核心语句
-- 语法:表示从startIndex下标开始,一页显示pageSize个 select * from users limit startIndex,pageSize; -- 语法:表示显示[0,n]范围的数据 select * from users limit n;
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);
Writing Mapper. xml
<!-- 分页查询--> <select id="getUserLImit" parameterType="map" resultType="pojo.User"> select * from firend_mq.users limit #{startIndex},#{pageSize} </select>
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(); }
résultats de requête :
interface d'écriture
//RowBounds实现分页查询 List<User> getUserLRowBounds();
<!-- RowBounds 分页查询--> <select id="getUserLRowBounds" resultType="pojo.User"> select * from firend_mq.users </select>
//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(); }
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!