为什么 PageHelper 不需要配置而 MP 需要?
1.PageHelper
独立插件:PageHelper 是一个独立的 MyBatis 分页插件,它的设计目标是尽可能简单地集成到现有的 MyBatis 应用中。
配置简单:通常只需要在 MyBatis 的配置文件中添加一行配置来注册 PageHelper 作为 MyBatis 的插件即可。例如,在 mybatis-config.xml 中添加 <plugin interceptor="com.github.pagehelper.PageInterceptor"> 标签。
自动分页:一旦配置完成,PageHelper 会自动拦截 MyBatis 的 SQL 执行,为符合条件的查询语句添加分页逻辑。
2.MyBatis Plus (MP)
功能丰富:MP 是一个 MyBatis 的扩展,提供了更多的功能,如自动 CRUD、实体映射、条件构造器等。
紧密集成:MP 的分页插件是 MP 的一部分,需要更深入地集成到应用中。这通常意味着需要在 Spring 应用上下文中注册 MP 的 GlobalConfig 或 MybatisPlusAutoConfiguration 类。
配置复杂:由于 MP 提供了更多的功能,因此需要更多的配置来满足不同的需求。例如,需要在 mybatis-plus-config.xml 或 Spring 配置类中注册 MybatisPlusConfig 或 MybatisPlusInterceptor。
3.为什么 PageHelper 不需要配置而 MP 需要?
设计哲学:PageHelper 专注于分页功能,因此它的配置相对简单;而 MP 是一个全面的 MyBatis 扩展工具,提供了多种功能,因此需要更多的配置来适应不同的应用场景。
集成方式:PageHelper 作为一个独立插件,只需要简单的配置即可使用;而 MP 作为一个框架的一部分,需要更深入地集成到 Spring 应用中,因此需要在 Spring 上下文中进行配置。
总结来说,PageHelper 旨在提供一个轻量级的分页解决方案,而 MP 则是一个功能更为丰富的 MyBatis 扩展框架,因此两者在配置上存在差异。