pagehelper

springboot集成mybatis

纵然是瞬间 提交于 2020-01-31 05:35:40
1、在pom文件中引入依赖 2、创建启动类 1 import org.mybatis.spring.annotation.MapperScan; 2 import org.springframework.boot.SpringApplication; 3 import org.springframework.boot.autoconfigure.SpringBootApplication; 4 5 /** 6 * Spring Boot启动类. 7 */ 8 @SpringBootApplication 9 @MapperScan("com.包名.*")//扫描:该包下相应的class,主要是MyBatis的持久化类.Mapper 10 public class App { 11 public static void main(String[] args) { 12 SpringApplication.run(App.class, args); 13 } 14 } 3、在application.properties添加配置文件 4、编写Demo实体类 5、编写DemoMapper接口 1 import java.util.List; 2 3 import org.apache.ibatis.annotations.Insert; 4 import org.apache.ibatis

SQL优化-大数据量分页优化

﹥>﹥吖頭↗ 提交于 2020-01-29 16:34:55
  百万数据量SQL,在进行分页查询时会出现性能问题,例如我们使用PageHelper时,由于分页查询时,PageHelper会拦截查询的语句会进行两个步骤   1.添加 select count(*)from (原查询sql) ,用于统计查询的总数   2.拼接 limit startPage,number 用于分页      此时有两个问题     第一个问题是:       用于统计的 select count(*)from (原查询sql)在数据量大时速度慢     第二个问题时:       limit startPage,number 在大数据量时效率低      解决方案:     第一个问题:       在数据量过大时,不使用分页插件PageHelper,select count(*)from (原查询sql)固定返回一个固定值给到前端,例如千万级数据,固定返回1千万     第二个问题:       在数据量过大时,不使用分页插件PageHelper ,使用join或者子查询去优化       例如 id为主键,name为非唯一索引         优化前:         select id,name,brand from table where name=‘xxx’ limit 100000,10         优化后:         select aa

分页插件

给你一囗甜甜゛ 提交于 2020-01-28 10:41:25
https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md 1 <!--引入pageHelper分页插件 --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.0.0</version> </dependency> 2 package com.controller; import com.bean.Employee; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.service.EmpService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation

分页插件 pageHelper

浪子不回头ぞ 提交于 2020-01-27 05:20:35
PageHelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,例如mysql、oracle、mariaDB、DB2、SQLite、Hsqldb等。 查询数据库展示到前端的过程中不可避免的要考虑到分页问题,这时就引入了Mybatis的PageHelper插件,这个插件对分页功能进行了强有力的封装。下面来看看。 使用pageHelper 1.导入所需要的依赖 <!-- Mybatis 框架 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.6</version> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.30</version> </dependency> <!-- 日志依赖 --> <!-- https://mvnrepository.com/artifact/log4j/log4j -->

spring cloud 声明式rest客户端feign调用远程http服务

两盒软妹~` 提交于 2020-01-26 00:30:52
在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端。Feign就是Spring Cloud提供的一种声明式REST客户端。可以通过Feign访问调用远端微服务提供的REST接口。现在我们就用Feign来调用SERVICE-HELLOWORLD暴露的REST接口,以获取到“Hello World”信息。在使用Feign时,Spring Cloud集成了Ribbon和Eureka来提供HTTP客户端的负载均衡。 下面我们就采用Feign的方式来调用服务集群。 1. 创建Maven工程,加入spring-cloud-starter-feign依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-feign</artifactId> </dependency> 完整的pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache

pagehelper分页

做~自己de王妃 提交于 2020-01-21 04:27:44
1.分页方法PageUtils 请见前几期:https://blog.csdn.net/weixin_44145478/article/details/102461178 public class Teacher { private String name ; private Integer age ; private String sex ; //set get... } 通常情况 解析: (1)封装的PageUtils.startPage(num,size),这个方法就是类似我们数据库操作的limit start ,count (2)得到的对象里面包含很多的字段信息,需要的有(总页数,总条数,当前页,以及该页数据) (3)如果我们只想得到分页处理之后我们的实体对象的结果,那么就调用PageUtils对象的getDataList()方法即可。 @Test public void test3 ( ) { PageBaseReqVo pageBaseReqVo = new PageBaseReqVo ( ) ; pageBaseReqVo . setPageNo ( 2 ) ; pageBaseReqVo . setPageSize ( 10 ) ; PageUtils . setStartPage ( pageBaseReqVo . getPageNo ( ) ,

springboot集成PageHelper,支持springboot2.0以上版本

生来就可爱ヽ(ⅴ<●) 提交于 2020-01-20 15:19:59
第一步:pom文件还是需要引入依赖 <!--mybatis的分页插件--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.5</version> </dependency> 第二步:这次直接是在项目的入口类application.java中直接设置PageHelper插件即可 //配置mybatis的分页插件pageHelper @Bean public PageHelper pageHelper(){ PageHelper pageHelper = new PageHelper(); Properties properties = new Properties(); properties.setProperty("offsetAsPageNum","true"); properties.setProperty("rowBoundsWithCount","true"); properties.setProperty("reasonable","true"); properties.setProperty("dialect","mysql"); //配置mysql数据库的方言

springboot使用pagehelper进行分页

自作多情 提交于 2020-01-19 19:16:08
上次的博客项目,使用到了分页,这里总结一下 1.项目环境 IDE:IDEA 语言:java 框架:springboot 模板引擎:thymeleaf 2.效果 3.pom.xml <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.5</version> </dependency> 4.application.properties #pagehelper pagehelper . helperDialect = mysql pagehelper . reasonable = true pagehelper . supportMethodsArguments = true pagehelper . params . count = countSql 5.后端 //查博客 @RequestMapping ( "/QueryBlog" ) public String QueryBlog ( Model m , @RequestParam ( value = "start" , defaultValue = "1" ) Integer start , @RequestParam ( value =

Mybatis_分页(pageHelper插件实现)

拥有回忆 提交于 2020-01-19 03:39:39
在pom.xml中添加pageHelper依赖 <!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --> < dependency > < groupId > com.github.pagehelper </ groupId > < artifactId > pagehelper </ artifactId > < version > 5.1.10 </ version > </ dependency > 在mybatis配置文件中添加插件依赖 < plugin interceptor = " com.github.pagehelper.PageInterceptor " > <!-- 配置数据库的类型 --> < property name = " helperDialect " value = " mysql " /> < property name = " reasonable " value = " true " /> </ plugin > DAO层Mapper写法和无分页写法相同,在Service层调用插件 public class UserService { /** * * @param pageNum * @param map * @return */ public

springboot整合druid、mybatis、paehelper

混江龙づ霸主 提交于 2020-01-19 01:45:15
springboot整合druid、mybatis、paehelper springboot配置数据库连接池druid 1、什么是DRUID? DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池,据说是目前最好的连接池。 特点: 处理的数据量规模较大。 可以进行数据的实时查询展示。 它的查询模式是交互式的,这也说明其查询并发能力有限。 可以实时监控项目,提高开发效率 pom依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency> application.yml spring: datasource: #1.JDBC type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/sm?useUnicode=true