2019独角兽企业重金招聘Python工程师标准>>>

前言

本文主要是针对SpringBoot2.0.2版本,实现整合mybatis、分页插件、druid等组件,实现完整的web服务,提供restful风格接口。

SpringBoot集成MyBatis有两种方式,一种简单的方式就是使用MyBatis官方提供的:
一、mybatis-spring-boot-starter (本文讲解的)
二、 另外一种方式也是我推荐的整合方式:
        就是仍然用类似mybatis-spring的配置方式,这种方式需要自己写一些代码,但是可以很方便的控制MyBatis的各项配置,与添加组件。参考:https://my.oschina.net/bianxin/blog/1602958

基础框架

①:在http://start.spring.io/,配置你的项目信息并下载我的是《2.0.2.RELEASE》,我的如下图:

添加整合相关的包:

<!-- 2.0后包含spring-boot-starter的web服务包 -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope>
</dependency>
<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.2</version>
</dependency>
<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.10</version>
</dependency>
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.5</version>
</dependency>

唯一的属性配置文件

项目不使用application.properties文件 而使用更加简洁的application.yml文件(直接改后缀名):

server:port: 8080
spring:application:name: user-centerdatasource:name: testurl: jdbc:mysql://127.0.0.1:3306/xinusername: rootpassword: root# 使用druid数据源type: com.alibaba.druid.pool.DruidDataSourcedriver-class-name: com.mysql.jdbc.Driverfilters: statmaxActive: 20initialSize: 1maxWait: 60000minIdle: 1timeBetweenEvictionRunsMillis: 60000minEvictableIdleTimeMillis: 300000validationQuery: select 'x'testWhileIdle: truetestOnBorrow: falsetestOnReturn: falsepoolPreparedStatements: truemaxOpenPreparedStatements: 20
mybatis:mapper-locations: classpath:mapping/*.xmltype-aliases-package: com.winter.model
#pagehelper分页插件
pagehelper:helperDialect: mysqlreasonable: truesupportMethodsArguments: trueparams: count=countSql
#日志级别
logging:level:com.xin.usercenter.dao: debug

别的东西和以前一样的,这样就整合完了。

分页实现代码:

public PageInfo<User> getUserBySearch(AppPage<User> page) {// TODO Auto-generated method stubPageHelper.startPage(page.getPageNum(),page.getPageSize());List<User> list=userDao.queryUserList(page.getParam());PageInfo<User> pageInfo = new PageInfo<User>(list);return pageInfo;
}

返回的PageInfo的数据结构如下:

{"total": 5,"list": [{"id": 1,"loginName": "admin","password": "123123","nickname": "ADMIN","type": 1,"state": 1,"note": "超级管理员","createTime": "2018-04-28 15:15:46","updateTime": "2018-04-28 15:16:37","updateUid": 1,"loginIp": null,"loginAddr": null},{"id": 2,"loginName": "bian","password": "123456","nickname": "Bian","type": 1,"state": 1,"note": "普通用户","createTime": "2018-06-21 11:25:31","updateTime": "2018-06-21 11:40:52","updateUid": 0,"loginIp": null,"loginAddr": null}],"pageNum": 1,"pageSize": 2,"size": 2,"startRow": 1,"endRow": 2,"pages": 3,"prePage": 0,"nextPage": 2,"isFirstPage": true,"isLastPage": false,"hasPreviousPage": false,"hasNextPage": true,"navigatePages": 8,"navigatepageNums": [1,2,3],"navigateFirstPage": 1,"navigateLastPage": 3,"firstPage": 1,"lastPage": 3
}

个人感觉官方返回的这个数据结构很完善了,所以就直接用PageInfo了。

源码地址:https://gitee.com/flying-cattle/earn_knife

欢迎加入技术讨论群:340697945

转载于:https://my.oschina.net/bianxin/blog/1835680

Spring Boot2.0 整合mybatis、分页插件、druid相关推荐

  1. springboot整合mybatis分页插件

    1.springboot版本为2.0.1,数据库为mysql,引入pagehelper的pom依赖 <!--mybatis分页插件--> <dependency><gro ...

  2. spring boot2.0整合富文本编辑器summernote

    summernote对上传图片,以及对图片大小细节,删除图片移除服务器资源等处理的比较完美. 整合过程,summernote的官网https://summernote.org/getting-star ...

  3. Spring Boot2.0 JPA 实现分页(简单查询分页、复杂查询分页)

    一.简单分页(只有一个查询条件) 在Repository层将查询语句的返回值类型设置为为Page类型,查询参数中加入Pageable pageable,如: @Repository public in ...

  4. SpringBoot整合mybatis+mybatis分页插件

    第一步:相关依赖 <!--web,servlet引入--> <dependency><groupId>org.springframework.boot</gr ...

  5. 框架 day74 涛涛商城项目整合ssm,分页插件pagehelper,商品列表查询

    讲师:入云龙 1.  课程计划 1. SSM框架整合 2. mybatis逆向工程 3. 商品列表 4. 商品列表分页处理 2.  SSM框架整合 2.1.  后台系统所用的技术 框架:Spring ...

  6. mybatis分页插件pageHelper简单实用

    转载自 http://blog.csdn.net/Smile_Miracle/article/details/53185655 工作的框架spring springmvc mybatis3 首先使用分 ...

  7. 2. mybatis分页插件使用

    1.概述 在做系统的过程中,分页查询是我们经常遇到的一个场景,我们可以借助mybatis分页插件方便的实现分页功能,本文分享怎样使用mybatis分页插件. 2.mybatis分页插件使用 mybat ...

  8. MyBatis分页插件PageHelper使用练习

    转载自:http://git.oschina.net/free/Mybatis_PageHelper/blob/master/wikis/HowToUse.markdown 1.环境准备: 分页插件p ...

  9. MyBatis学习总结(17)——Mybatis分页插件PageHelper

    2019独角兽企业重金招聘Python工程师标准>>> 如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 分页插件支持任何复杂的单表.多表分页,部分特殊 ...

最新文章

  1. android 以不规则图片为边框切割另外图片
  2. libevent 安装异常
  3. centos安装Hue 3.7.0
  4. JavaScript及jQuery选择器(二)
  5. VS2013 MFC基于对话框编程(创建工程)
  6. i219 2012驱动_2012年I / O之后
  7. python中try怎么用_python下try
  8. Vert.x Web
  9. The L1 Median (Weber 1909)
  10. OpenCV人工智能图像处理学习笔记 第6章 计算机视觉加强之机器学习下 Hog_SVM小狮子识别
  11. c++ 跳转到上级目录_基于VSCode和CMake进行C/C++开发第五讲IDEVSCode
  12. web项目中图标的前端处理方案
  13. LabVIEW控制Arduino实现红外测距(进阶篇—6)
  14. 网站搭建的流程是什么
  15. 无刷电机工作原理介绍
  16. android备份手机号码,简单四步 完成Android手机通讯录云备份操作
  17. 数据挖掘概念与技术——读书笔记(1)
  18. jmeter请求返回报文中带有转义字符可加/转义处理后做其他操作
  19. 对于gabor变换和gabor小波变换理解与总结
  20. php随机给文字拼音,给文字加上拼音_php

热门文章

  1. [Java] 蓝桥杯ALGO-150 算法训练 6-1 递归求二项式系数值
  2. 蓝桥杯 ALGO-63 算法训练 乘法表
  3. PAT 乙级 1051. 复数乘法 (15) Java版
  4. SD9001: IE6 IE7 IE8(Q) 中的 getElementById 方法能以 name 属性为参数获取某些元素
  5. Perl线程开发过程中的经验
  6. Java 读取 INI 配置文件的方法
  7. 比较LANG和NLS_LANG在Linux中的作用
  8. python把字符串转成字典
  9. so文件动态加载注意事项
  10. 《OpenGL编程指南》一第3章 OpenGL绘制方式