pagehelper mybatis yml文件配置
在使用MyBatis和PageHelper进行分页的时候,可以在Spring Boot项目的application.yml
文件中进行配置。以下是一个配置示例:
spring:
datasource:
url: jdbc:mysql://localhost:3306/your_database?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
username: your_username
password: your_password
driver-class-name: com.mysql.cj.jdbc.Driver
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.yourpackage.model
pagehelper:
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params: count=countSql
在这个配置中,spring.datasource
是数据源的配置,mybatis.mapper-locations
指定了MyBatis的mapper文件位置,mybatis.type-aliases-package
指定了实体类所在的包路径。pagehelper
部分是针对PageHelper插件的配置,其中:
helperDialect
: 指定数据库方言,这里是mysql
。reasonable
: 开启合理化参数,如果传入的参数不合理会自动修正。supportMethodsArguments
: 支持通过Mapper接口参数来传递分页参数,通常配合@Param
注解使用。params
: 用于指定RowBounds参数的名称,默认值是offset
、limit
,这里配置为countSql
表示分页插件将采用countSql
作为分页的SQL。
在代码中使用PageHelper进行分页的示例如下:
@Mapper
public interface YourMapper {
@Select("SELECT * FROM your_table")
List<YourModel> selectByPage(@Param("offset") int offset, @Param("limit") int limit);
}
@Service
public class YourService {
@Autowired
private YourMapper yourMapper;
public PageInfo<YourModel> getPage(int pageNum, int pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<YourModel> list = yourMapper.selectByPage(pageNum, pageSize);
return new PageInfo<>(list);
}
}
在上述代码中,PageHelper.startPage(pageNum, pageSize);
用于设置分页参数,然后通过调用yourMapper.selectByPage
方法获取分页数据,最后将结果封装在PageInfo
对象中。
评论已关闭