Mybatis分页拦截器 配置类
时间: 2023-05-31 08:03:15 浏览: 55
Mybatis 分页拦截器配置类示例:
```java
@Configuration
public class MybatisPageInterceptorConfig {
@Autowired
private DataSource dataSource;
@Bean
public PageInterceptor pageInterceptor() {
PageInterceptor pageInterceptor = new PageInterceptor();
Properties properties = new Properties();
properties.setProperty("helperDialect", "mysql"); // 数据库方言,支持多种数据库
properties.setProperty("reasonable", "true"); // 分页参数是否合理化,即是否允许页码小于 1 或大于总页数,默认为 false
properties.setProperty("supportMethodsArguments", "true"); // 支持通过 Mapper 接口参数来传递分页参数,默认为 false
properties.setProperty("params", "count=countSql"); // 分页参数名称,默认为 page
pageInterceptor.setProperties(properties);
return pageInterceptor;
}
@Bean
public SqlSessionFactory sqlSessionFactory() throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
sessionFactory.setPlugins(new Interceptor[]{pageInterceptor()});
return sessionFactory.getObject();
}
}
```
在上面的示例中,我们将 Mybatis 分页拦截器配置为 Spring Bean,然后将其添加到 SqlSessionFactory 中。此外,我们还可以通过 properties 对象来配置分页拦截器的属性,如数据库方言、分页参数名称等等。