日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何在springboot中使用PageHelper分页插件

發(fā)布時間:2024/9/27 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何在springboot中使用PageHelper分页插件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

          • 1. pom依賴
          • 2. yml
          • 3. 實體類
          • 4. mapper映射文件
          • 4. mapper接口
          • 5. service接口
          • 6. 實現(xiàn)類
          • 7. controller
          • 8. 瀏覽器驗證

使用思路: 1.引入myabtis和pagehelper依賴 2.yml中配置mybatis掃描和實體類 3. 這2行代碼 pageNum:當(dāng)前第幾頁 pageNum:顯示多少條數(shù)據(jù) userList:數(shù)據(jù)庫查詢的數(shù)據(jù)數(shù)據(jù)列表PageHelper.startPage(pageNum, pageSize);PageInfo pageInfo = new PageInfo(userList);最后返回一個pageInfo 對象即可,pageInfo 這個對象中只有數(shù)據(jù)一些信息,但是,沒有成功失敗的狀態(tài)或者提示語。真實企業(yè)中會封裝一個返回對象,把pageInfo 放到對象中
1. pom依賴
<!--Myabtis依賴--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.2</version></dependency><!--pagehelper依賴--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.13</version></dependency><!--mysql依賴--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.20</version></dependency><!--數(shù)據(jù)源--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.21</version></dependency><!--提高效率lombok插件--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency>
2. yml
spring:application:name: springboot-vuedatasource:type: com.alibaba.druid.pool.DruidDataSourcedriver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/vue?characterEncoding=UTF-8&serverTimezone=GMT%2B8username: rootpassword: rootserver:port: 8989servlet:context-path: /vue#mybatis配置信息 mybatis:configuration:map-underscore-to-camel-case: true#控制臺日志配置 打印sqllog-impl: org.apache.ibatis.logging.stdout.StdOutImplmapper-locations: classpath:mappers/*.xmltype-aliases-package: com.baizhi.entity#數(shù)據(jù)庫方言 pagehelper:helper-dialect: mysql#控制臺日志配置 logging:pattern:console: "[%thread] %-5level %logger{36} - %msg%n"
3. 實體類
package com.baizhi.entity;import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; import lombok.experimental.Accessors;import java.io.Serializable;@Data @AllArgsConstructor @NoArgsConstructor @ToString @Accessors(chain = true) public class TUser implements Serializable {private static final long serialVersionUID = 745741804375055500L;private Integer id;private String name;private Integer age;@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GTM+8")private String bir; }
4. mapper映射文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.baizhi.dao.TUserDao"><resultMap type="com.baizhi.entity.TUser" id="TUserMap"><result property="id" column="id" jdbcType="INTEGER"/><result property="name" column="name" jdbcType="VARCHAR"/><result property="age" column="age" jdbcType="INTEGER"/><result property="bir" column="bir" jdbcType="VARCHAR"/></resultMap><select id="selectUserAll" resultMap="TUserMap">selectid, name, age, birfrom vue.t_user</select> </mapper>
4. mapper接口
package com.baizhi.dao;import com.baizhi.entity.TUser; import org.apache.ibatis.annotations.Mapper; import java.util.List;/*** (TUser)表數(shù)據(jù)庫訪問層** @author makejava* @since 2020-05-05 18:39:21*/ @Mapper public interface TUserDao {List<TUser> selectUserAll(); }
5. service接口
package com.baizhi.service;import com.baizhi.entity.TUser; import com.github.pagehelper.PageInfo;import java.util.List;/*** (TUser)表服務(wù)接口** @author makejava* @since 2020-05-05 18:39:22*/ public interface TUserService {PageInfo list(Integer pageNum, Integer pageSize); }
6. 實現(xiàn)類
package com.baizhi.service.impl;import com.baizhi.dao.TUserDao; import com.baizhi.entity.TUser; import com.baizhi.service.TUserService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import org.springframework.stereotype.Service;import javax.annotation.Resource; import java.util.List;/*** (TUser)表服務(wù)實現(xiàn)類** @author makejava* @since 2020-05-05 18:39:22*/ @Service("tUserService") public class TUserServiceImpl implements TUserService {@Resourceprivate TUserDao tUserDao;public PageInfo list(Integer pageNum, Integer pageSize) {PageHelper.startPage(pageNum, pageSize);List<TUser> userList = this.tUserDao.selectUserAll();//如果返回前的數(shù)據(jù) 和 數(shù)據(jù)庫實體 對象數(shù)據(jù)一致 采下面方式//如果不一致,采用 PageInfo pageInfo = new PageInfo(); pageInfo.setList(shippingList);PageInfo pageInfo = new PageInfo(userList);return pageInfo;} }
7. controller
package com.baizhi.controller;import com.baizhi.service.TUserService; import com.github.pagehelper.PageInfo; import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;/*** (TUser)表控制層** @author makejava* @since 2020-05-05 18:39:22*/ @RestController @CrossOrigin @RequestMapping("user") public class TUserController {/*** 服務(wù)對象*/@Resourceprivate TUserService tUserService;@GetMapping("findAll")public PageInfo findAll(@RequestParam(required = false, defaultValue = "1") Integer pageNum,@RequestParam(required = false, defaultValue = "10") Integer pageSize) {PageInfo list = this.tUserService.list(pageNum, pageSize);return list;} }
8. 瀏覽器驗證

http://localhost:8989/vue/user/findAll?pageNum=0&pageSize=5

總結(jié)

以上是生活随笔為你收集整理的如何在springboot中使用PageHelper分页插件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。