Mybatis 分页插件使用手册
一、插件配置
spring 配置文件 中添加 数据库方言可选:mysql, mariadb, sqlite, oracle, hsqldb, postgresql, sqlserver2000, sqlserver2005,sqlserver2008, db2, informix,derby;
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!-- <property name="configLocation" value="classpath:mybatis.xml" /> --> <property name="plugins"> <list> <bean class="org.smile.mybatis.page.PageHelper"> <property name="properties"> <value>dialect =sqlserver2005</value> </property> </bean> </list> </property> </bean>
参数说明 : properties 的内容
dialect |
数据库方言 |
STRING |
必选 |
默认 |
page |
当前页参数名 |
STRING |
|
page |
pageSize |
每页条数参数名 |
String |
|
pageSize |
countMethod |
自定义count 方法参数名 |
String |
|
countMethod |
msCache |
是否缓存mappedstatment |
Boolean |
|
true |
paramPage |
是否启用查询参数中添加分页参数的方式颁 |
boolean |
|
false |
二、插件使用方法
插件两种主要使用方法
1、 使用 pagehelper 调用进行分页
PageHelper.startPage(page,pageSize);
这样是使用插件内置count 查询
Map<String, Object> queryMap = new HashMap<String, Object>(); //查询条件 queryMap.put("lifnr", lifnr.getLifnr()); queryMap.put("purCode", lifnr.getPurCode()); queryMap.put("deliveryDay", lifnr.getDeliveryDay()); PageHelper.startPage(page, fPage.getPageSize()); //总条数 PageModellist = (PageModel)lifnrDAO.queryLifnrList(queryMap);
PageHelper.startPage(request);
会从request中获取配置文件中配置的 page 对应参数的值和 pageSize 对应参数的值进行分页
PageHelper.startPage(page,pageSize,false);
不使进行count 计算
可以在方法参数中加入countMethod 对应参数指定自定义的mybatis 中 count方法id 进行count 计算
2 使用方法参数中添加分页参数信息
paramPage 参数必须设置为true
<value> paramPage =true</value>
代码:
Map<String, Object> queryMap = new HashMap<String, Object>(); //查询条件 queryMap.put("lifnr", lifnr.getLifnr()); queryMap.put("purCode", lifnr.getPurCode()); queryMap.put("deliveryDay", lifnr.getDeliveryDay()); queryMap.put(PageHelper.getConfig().getPage(),page); queryMap.put(PageHelper.getConfig().getPageSize(),pageSize); //总条数 PageModellist = (PageModel)lifnrDAO.queryLifnrList(queryMap);
Mybatis 批量插件使用手册
一、插件配置
spring 配置文件 中添加
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!-- <property name="configLocation" value="classpath:mybatis.xml" /> --> <property name="plugins"> <list> <bean class="org.smile.mybatis.batch.BatchHelper"> <property name="properties"> <value>method=batchUpdate</value> </property> </bean> </list> </property> </bean>
参数说明 : properties 的内容
method |
要使用批量操作插件的方法前匹配 |
STRING |
可选 |
batch |
二、插件使用方法
必须把方法名以配置中method 的值开头 如:配置的值为 method=batchUpdate
那么方法必须以batchUpdate开头例子:
public int batchUpdatePerson(List<Person> persons);
<update id="batchUpdatePerson" parameterType="java.util.List" > <!-- insert into student(name,adress,age,id) values(#{name},#{adress},#{age}, #{id}) delete from student where age=#{age} and id=#{id} --> update student set name =#{name} where id=#{id} and age=#{age} </update>
可以支持 insert update delete 多种语句 返回更新数据条数
相关推荐
而Mybatis的分页插件和通用Mapper是两个常用的扩展,它们极大地提高了开发效率。在这个示例项目中,我们将深入探讨如何集成这两个组件。 **一、Mybatis分页插件** Mybatis分页插件,如PageHelper,是Mybatis的一个...
Mybatis通用Mapper插件是一个基于Mybatis的增强工具,旨在简化数据库操作,提高开发效率。它通过提供通用的CRUD操作接口,减少了手动编写SQL语句的工作量,同时保留了Mybatis的原生特性。 主要功能模块 代码生成...
【通用Mapper】则是一个用于MyBatis的插件,它提供了基础的CRUD操作,包括增删查改和批量操作,极大地提高了开发效率。通用Mapper通过注解或XML配置,可以快速实现基本的数据库操作,减少了大量重复的代码编写。 在...
内置了分页插件,可以方便地实现分页查询,支持多种数据库的分页方式,如 MySQL、Oracle 等,使用 `Page` 对象进行分页参数设置和结果接收。 6. **主键生成策略**: 提供了多种主键生成策略,包括 Identity(自动...
Java 分页插件Valuelist是一款用于Java Web开发中的实用工具,主要目的是为了在处理大量数据时提高性能和用户体验,通过高效地分页显示数据,避免一次性加载所有数据导致内存压力过大。Valuelist源码的分析对于理解...
6. **分页插件**:集成PageHelper分页插件,可以方便地实现物理分页和逻辑分页。 7. **乐观锁**:通过在表中增加一个版本号字段,实现乐观锁,避免并发问题。 8. **自定义全局配置**:可以全局配置一些参数,如...
Mybatis Plus 提供了内置的通用 mapper 和 service,可以减少开发者的工作量。 2. Lambda 表达式方便编写各种查询条件 Mybatis Plus 支持 Lambda 表达式,可以方便地编写各种查询条件。 3. 支持主键自动生成 Mybatis...
5. **分页查询**:MyBatis Plus内置了分页插件,可以轻松实现物理分页和逻辑分页,只需要在全局配置中开启,并设置对应的分页参数,即可在查询时自动实现分页效果。 6. **批量操作**:支持批量插入、更新数据,提高...
4. **分页查询**:内建了通用的分页插件,支持多种数据库的分页功能,简化了分页查询的实现。 5. **实体继承**:在设计数据库模型时,可以通过继承来复用公共字段,使得数据表结构更加清晰。 6. **填充实体对象**...
- **分页插件**: 提供了PaginationInterceptor分页插件,支持多种数据库的物理分页,只需几行代码即可实现高效分页查询。 - **ID生成器**: 支持多种ID生成策略,如雪花算法、全局唯一ID(UUID)等。 2. **性能...
MyBatis Plus(简称MP)是MyBatis的扩展插件,它简化了对数据库的基本操作,如 CRUD(创建、读取、更新、删除)以及批量操作。EasyCode则是一种代码生成工具,可以帮助开发者快速生成基于MyBatis Plus的Controller、...
MP 的主要特性包括:自动 CRUD 生成、条件构造器、批量操作、分页插件、性能分析等。 Spring Boot 是基于 Spring 框架的一个快速开发工具,它简化了新 Spring 应用的初始搭建以及开发过程。Spring Boot 通过默认...
MyBatis Plus(简称MP)是MyBatis的扩展插件,主要目的是简化MyBatis的常规操作,提供更便捷的SQL构建方式。在实际的项目开发中,它能够极大地提高开发效率,尤其是在处理大量的数据库CRUD操作时。本文将详细介绍...
其主要特性包括:无 XML 配置,提供 Insert、Update、Delete、Select 等方法,支持 Lambda 表达式,支持自定义全局通用操作,支持分页插件等。 3. **集成步骤** - 引入依赖:在 `pom.xml` 文件中添加 MyBatis-Plus...
5. **分页插件**:MyBatis-Plus内置了PageHelper分页插件,可以自动进行物理或逻辑分页,避免了手动编写分页SQL的麻烦。 6. **自定义全局配置**:可以根据项目需求自定义全局配置,如主键策略、填充策略、异常处理...
PageHelper是MyBatis的优秀分页插件,它实现了通用的分页功能,简化了在开发过程中对数据进行分页显示的复杂性。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。而PageHelper与MyBatis无缝...
- MyBatis 提供了分页插件 PageHelper,它可以实现通用的分页功能。在 XML 映射文件中,通过 PageHelper 的标签进行分页设置,例如 `limit` 和 `offset`。 - 在 Java 代码中,需要对 SQLExecutor 进行拦截,以便在...