mybatis 通用分页插件和批量操作插件
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 intostudent(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 多种语句 返回更新数据条数
页:
[1]