mybatis分页插件pageHelper详解及简单实例
程序员文章站
2024-01-16 10:59:58
mybatis分页插件pagehelper详解及简单实例
工作的框架spring springmvc mybatis3
首先使用分页插件必须先引入maven依赖,在po...
mybatis分页插件pagehelper详解及简单实例
工作的框架spring springmvc mybatis3
首先使用分页插件必须先引入maven依赖,在pom.xml中添加如下
<!-- 分页助手 --> <dependency> <groupid>com.github.pagehelper</groupid> <artifactid>pagehelper</artifactid> <version>3.7.5</version> </dependency>
其次需要在配置文件中添加配置,有两种方式
1,新建mybatis-config.xml内容如下
<?xml version="1.0" encoding="utf-8"?> <!doctype configuration public "-//mybatis.org//dtd config 3.0//en" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- 分页助手 --> <plugins> <!-- com.github.pagehelper为pagehelper类所在包名 --> <plugin interceptor="com.github.pagehelper.pagehelper"> <!-- 数据库方言 --> <property name="dialect" value="mysql"/> <!-- 设置为true时,使用rowbounds分页会进行count查询 会去查询出总数 --> <property name="rowboundswithcount" value="true"/> </plugin> </plugins> </configuration>
在spring-mybatis.xml中添加一个bean属性
<bean id="sqlsessionfactory" class="org.mybatis.spring.sqlsessionfactorybean"> <property name="datasource" ref="datasource" />
加载全局的配置文件
<property name="configlocation" value="classpath:mybatis-config.xml"></property>
配置mapper的扫描,找到所有的mapper.xml映射文件。
<property name="mapperlocations" value="classpath:com/lyitong/mapping/*.xml"></property>
备注:如果你的mybatis-config.xml配置文件开启了如下别名配置:
<typealiases> <!-- javabean 的首字母小写的非限定类名来作为它的别名(其实别名是不去分大小写的)。也可在javabean 加上注解@alias 来自定义别名, 例如: @alias(student) --> <package name="com.lyt.usermanage.mapper"/> </typealiases>
那么你的spring和mybatis整合文件就得加上相应的属性,否则会造成mybatis配置文件加载不成功报异常,如下:
<bean id="sqlsessionfactory" class="org.mybatis.spring.sqlsessionfactorybean"> <property name="datasource" ref="datasource" /> <!-- 加载全局的配置文件 --> <property name="configlocation" value="classpath:mybatis/mybatis-config.xml"></property> <!-- 配置mapper的扫描,找到所有的mapper.xml映射文件。 --> <property name="mapperlocations" value="classpath:com/lyt/usermanage/mapper/*.xml"></property> <!-- 配置类型别名 --> <property name="typealiasespackage" value="classpath:com/lyt/usermanage/pojo/*"></property> </bean>
相比于上面的配置我们这里多了一步
<property name="typealiasespackage" value="classpath:com/lyt/usermanage/pojo/*"></property>
配置的时候要注意mybatis配置文件和spring-mybatis整合文件的属性要统一。
2.如上操作配置完成,下面第二种方法
直接在spring-mybatis.xml中配置如下属性
<bean id="sqlsessionfactory" class="org.mybatis.spring.sqlsessionfactorybean"> <property name="datasource" ref="datasource" /> <property name="mapperlocations" value="classpath:com/lyitong/mapping/*.xml"></property> <!-- pagehelper 分页插件 --> <property name="plugins"> <array> <bean class="com.github.pagehelper.pagehelper"> <property name="properties"> <value> dialect=mysql rowboundswithcount=true </value> </property> </bean> </array> </property> </bean>
配置文件加载好之后,就可以直接使用,具体使用代码如下:
pagehelper.startpage(integer.parseint(currentpage), integer.parseint(pagesize)); list<lytbbstz> publishtz = bbstzdao.getpublishtz(userid); pageinfo<lytbbstz> info = new pageinfo<lytbbstz>(publishtz); map.put("status", 1); map.put("tzlist", info.getlist()); return map;
前台需要传入的参数是当前页和页面显示数目,当然页面显示数目也可以后台规定,一般在接收参数时最好加上默认配置如下:
@requestparam(defaultvalue="1",value="currentpage")string currentpage, @requestparam(defaultvalue="10",value="pagesize")string pagesize
这是如果接收参数为空字符串时它自身默认显示的页面和条数,这个可以自己规定
以上就是pagehelper的简单应用
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
上一篇: neo4j在线增量批量插入三元组
下一篇: Java细节整理——数组与内存控制