分享

SpringBoot集成PageHelper(Oracle数据库)

 忠波irlphwt1ng 2019-11-24

参考网页

https://blog.csdn.net/gnail_oug/article/details/80229542

集成步骤

Pom

<!-- pagehelper -->
<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.2.5</version>
</dependency>

application.properties配置文件

########################################## pagehelper分页插件配置
pagehelper.helperDialect=oracle
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

Controller

    @Autowired
    private UserService userService;
    
   @RequestMapping(value = "/getUsers", method = RequestMethod.GET)
    @ApiOperation(value = "查询", notes = "分页查询用户", produces = "application/json")
   public PageInfo<User> getUsers(@RequestParam(value = "jsonString") String jsonString,
                           HttpServletRequest request) throws Exception{
      //整理参数
      UserQuery query = null;
        try {
           query = JsonUtil.parseJson(jsonString, UserQuery.class);
        } catch (Exception e) {
            return null;
        }

      Integer pageNo = query.getPageNo() == null?1:query.getPageNo();
      Integer pageSize = query.getPageSize() == null?10:query.getPageSize();
      PageHelper.startPage(pageNo,pageSize);
      PageInfo<User> pageInfo = new PageInfo<>(userService.getUsers(query));
        return pageInfo;
   }

Service

@Autowired
private UserMapper userMapper;

public Page<User> getUsers(UserQuery query){
    Page<User> userList = userMapper.getUsers(query);
    return userList;
}

Mapper

Page<User> getUsers(UserQuery query);

★几点说明

application.properties配置文件中支持的数据库类型

目前Pagehelper插件支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页,不同数据库只需要修改helperDialect就行。

Oracle数据库写法

########################################## pagehelper分页插件配置
pagehelper.helperDialect=oracle
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

MySQL数据库写法

########################################## pagehelper分页插件配置
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

SQLServer数据库写法

########################################## pagehelper分页插件配置
pagehelper.helperDialect=sqlserver
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

Page类说明

Page是com.github.pagehelper包里的类,它是java.util.ArrayList的子类。

需要注意的是,分页代码PageHelper.startPage(pageNo,pageSize);只对其后的第一个查询有效。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多