pagehelper

Mybatis3源码分析(4)插件分析

天涯浪子 提交于 2020-02-20 03:04:25
源码总结回顾 对象 相关对象 作用 Configuration MapperRegistry TypeAliasRegistry TypeHandlerRegistry 包含了 MyBatis 的所有的配置信息 SqlSession SqlSessionFactory DefaultSqlSession 对操作数据库的增删改查的 API 进行了封装,提供给应用层使用 Executor BaseExecutor SimpleExecutor BatchExecutor ReuseExecutor MyBatis 执行器,是 MyBatis 调度的核心,负责 SQL 语句的生成和查 询缓存的维护 StatementHandler BaseStatementHandler SimpleStatementHandler PreparedStatementHandler CallableStatementHandler 封装了 JDBC Statement 操作,负责对 JDBC statement 的操作,如设 置参数、将 Statement 结果集转换成 List 集合 ParameterHandler DefaultParameterHandler 把用户传递的参数转换成 JDBC Statement 所需要的参数 ResultSetHandler

web编程jsp小tips

巧了我就是萌 提交于 2020-02-19 13:52:11
jsp文件头 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> web资源路径问题 是不是感觉写${pageContext.request.contextPath}/很长,比较费劲,有没有什么简写的方法呢? 现提供两种解决办法 方法一 存储的方式: 在jsp文件开头,用一段Java代码将项目的路径存到pageContext域中,像下面那样 <%pageContext.setAttribute("appPath", request.getContextPath()); %> 取出的方式为:${appPath}/ <link rel="stylesheet" type="text/css" href="${appPath }/static/h-ui/css/H-ui.min.css" /> 方式二 存储的方式:还是用一段Java代码,用一个简单的字符串来接收项目路径 <%String appPath = request.getContextPath()+"/"; %> 取出的方式为:<%=appPath%> <link rel="stylesheet" type="text/css" href="<%=appPath %>static/h-ui/css/H-ui

PageHelper不起作用的最后办法

会有一股神秘感。 提交于 2020-02-19 04:10:18
如果你确定PageHelper的使用没有错误,哪哪都检查了没有发现问题,但插件就是不起作用, 一头雾水之时,请回头看看是不是依赖引错了。 Maven项目: < dependency > < groupId > com.github.pagehelper </ groupId > < artifactId > pagehelper </ artifactId > < version > 最新版本 </ version > </ dependency > 可参考: Mybatis-PageHelper Spring Boot 项目: < dependency > < groupId > com.github.pagehelper </ groupId > < artifactId > pagehelper-spring-boot-starter </ artifactId > < version > 最新版本 </ version > </ dependency > 可参考: pagehelper-spring-boot-starter 注意在Spring Boot的项目一定要引用后者,否则,PageHelper和Spring Boot的版本问题很可能就成了导致插件不起作用的罪魁祸首。 来源: CSDN 作者: 波波妮 链接: https://blog.csdn.net/nibonnn

Mybatis的分页工具

╄→гoц情女王★ 提交于 2020-02-16 03:26:08
配置拦截器插件 特别注意,新版拦截器是 com.github.pagehelper.PageInterceptor 。 com.github.pagehelper.PageHelper 现在是一个特殊的 dialect 实现类,是分页插件的默认实现类,提供了和以前相同的用法。 1. 在 MyBatis 配置 xml 中配置拦截器插件 <!-- plugins在配置文件中的位置必须符合要求,否则会报错,顺序如下: properties?, settings?, typeAliases?, typeHandlers?, objectFactory?,objectWrapperFactory?, plugins?, environments?, databaseIdProvider?, mappers? --> <plugins> <!-- com.github.pagehelper为PageHelper类所在包名 --> <plugin interceptor="com.github.pagehelper.PageInterceptor"> <!-- 使用下面的方式配置参数,后面会有所有的参数介绍 --> <property name="param1" value="value1"/> </plugin> </plugins> 2. 在 Spring 配置文件中配置拦截器插件 使用

解决pagehelper分页不生效

前提是你 提交于 2020-02-15 07:27:19
原来版本: springboot1.5.2 + mybatis1.1.1 + pagehelper4.1.6 生效 (而且不需要额外其他配置) <!-- mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.1.1</version> </dependency> <!-- pageHelper 分页插件--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.1.6</version> </dependency> 升级版本: springboot2.1.4 + mybatis2.0.0 + pagehelper1.2.5 生效 (需要额外的配置,配置文件或配置类) <!-- mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId>

pagehelper 分页不生效,总页数总是1解决方案

别等时光非礼了梦想. 提交于 2020-02-09 21:39:22
问题:   后台查询后的数据只有1页,已经设置了PageHelper也没用      PageHelper.startPage(pageNum,pageSize); ModelAndView mv=new ModelAndView();      Integer count= secondService.message(); mv.addObject("count",count);      List<Second> seconds= secondService.show();        mv.addObject("seconds",seconds);      PageInfo<Second> pageInfo=new PageInfo<>(seconds);     mv.addObject("pageInfo",pageInfo);    解决方案: PageHelper.startPage(pageNum,pageSize);只对该语句以后的第一个查询语句得到的数据进行分页。 问题解决。 PS: pom.xml <!--mybatis分页插件--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.2<

PageHelper分页插件及通用分页js

我的未来我决定 提交于 2020-02-06 06:53:01
分页概述 1.物理分页 物理分页依赖的是某一物理实体,这个物理实体就是数据库,比如MySQL数据库提供了limit关键字,程序员只需要编写带有limit关键字的SQL语句,数据库返回的就是分页结果。建议使用。 2.逻辑分页 逻辑分页依赖的是程序员编写的代码。数据库返回的不是分页结果,而是全部数据,然后再由程序员通过代码获取分页数据,常用的操作是一次性从数据库中查询出全部数据并存储到List集合中,因为List集合有序,再根据索引获取指定范围的数据。 MyBatis 分页插件 - PageHelper 该插件目前支持以下数据库的 物理分页 : Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 SqlServer(2005,2008) Informix H2 SqlServer2012 Derby Phoenix 分页插件 5.0 由于分页插件 5.0 版本和 4.2.x 实现完全不同,所以 master 分支为 5.x 版本,4.2 作为一个分支存在,如果有针对 4.2 的 PR,请注意提交到分支版本。 集成 使用 PageHelper 你只需要在 classpath 中包含 pagehelper-x.x.x.jar 和 jsqlparser-0.9.5.jar 。 如果你使用 Maven,你只需要在 pom.xml 中添加下面的依赖

SpringBoot2.0之五 优雅整合SpringBoot2.0+MyBatis+druid+PageHelper

久未见 提交于 2020-02-05 23:20:23
  上篇文章我们介绍了SpringBoot和MyBatis的整合,可以说非常简单快捷的就搭建了一个web项目,但是在一个真正的企业级项目中,可能我们还需要更多的更加完善的框架才能开始真正的开发,比如连接池、分页插件等。下面我们就来看看在SpringBoot中怎么快速的集成这些东西。 一、新建一个项目,引入相关依赖,加粗的是本项目中新引入的依赖 <!-- 单元测试依赖 start --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> <!-- 单元测试依赖 end --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> <

PageHelper:Mybatis分页插件

余生颓废 提交于 2020-02-05 20:52:57
PageHelper是国内一款开源的mybatis分页插件,支持基本主流与常用的数据库,例如mysql、oracle、mariaDB、DB2、SQLite、Hsqldb等。 使用: 第一步:在pom.xml中添加依赖 < dependency > < groupId > com . github . pagehelper < / groupId > < artifactId > pagehelper < / artifactId > < version > 5.1 .2 < / version > < / dependency > 第二步: 在 applicationContext.xml中配置拦截器插件 < ! -- 配置SqlSessionFacory工厂,用来生产代理对象 -- > < bean id = "sqlSessionFactory" class = "org.mybatis.spring.SqlSessionFactoryBean" > < ! -- 数据库连接池 -- > < property name = "dataSource" ref = "dataSource" / > < ! -- 传入PageHelper的插件 -- > < property name = "plugins" > < array > < ! -- 传入插件的对象 -- > <

学成在线(第7天)

一曲冷凌霜 提交于 2020-02-01 10:22:42
我的课程 课程添加完成后可通过我的课程进入课程修改页面,此页面显示我的课程列表,如下图所示,可分页查询。 注意:由于课程图片服务器没有搭建,这里在测试时图片暂时无法显示。 上边的查询要实现分页、会存在多表关联查询,所以建议使用mybatis实现我的课程查询。 PageHelper PageHelper是mybatis的通用分页插件,通过mybatis的拦截器实现分页功能,拦截sql查询请求,添加分页语句, 最终实现分页查询功能。 我的课程具有分页功能,本项目使用Pagehelper实现Mybatis分页功能开发,由于本项目使用springboot开发,在 springboot上集成pagehelper( https://github.com/pagehelper/pagehelper-spring-boot ) PageHelper的使用方法及原理如下: 在调用dao的service方法中设置分页参数:PageHelper.startPage(page, size),分页参数会设置在ThreadLocal中 PageHelper 在mybatis执行sql前进行拦截,从ThreadLocal取出分页参数,修改当前执行的sql语句,添加分页 sql。 最后执行添加了分页sql的sql语句,实现分页查询。 PageHelper配置 1)添加依赖 <dependency>