1.导入依赖
<!--分页插件坐标-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.2</version>
</dependency>
2.1xml配置方法
在spring的配置文件中中SqlSessionFactoryBean中添加
<bean class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="plugins" ref="pageInterceptor"/>
</bean>
<bean class="com.github.pagehelper.PageInterceptor" id="pageInterceptor">
<property name="properties">
<props>
<!--设置方言-->
<prop key="helperDialect">mysql</prop>
<!--设置查询合法性,默认为false-->
<prop key="reasonable">true</prop>
</props>
</property>
</bean>
2.2 注解配置pageHelper
@Bean
public SqlSessionFactoryBean getSqlsessionFactoryBean(DataSource dataSource,Interceptor interceptor) {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.setDataSource(dataSource);
//将配置好的分页bean注入sqlSessionFactoryBean中
sqlSessionFactoryBean.setPlugins(interceptor);
return sqlSessionFactoryBean;
}
@Bean("pageInterceptor")
public Interceptor getPageInterceptor(){
PageInterceptor pageInterceptor = new PageInterceptor();
Properties props = new Properties();
props.setProperty("helperDialect","mysql");
props.setProperty("reasonable","true");
pageInterceptor.setProperties(props);
return pageInterceptor;
}
3.在需要用到分页插件的Controller中添加代码:
@RequestMapping("/getPage/{page}/{size}")
public PageInfo<Account> getPage(@PathVariable int page, @PathVariable int size){
//设置分页的page,size
PageHelper.startPage(page,size);
List<Account> accounts = accountService.selectAllAccount();
System.out.println(accounts);
return new PageInfo<>(accounts);
}