com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration报错

SpringBoot 加入了 PageHelper 分页依赖后,启动报错: The dependencies of some of the beans in the application context form a cycle: com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration

一、问题

在 SpringBoot 中,加入了 PageHelper 依赖后,在启动 SpringBoot 时,报错如下:

Java code?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

  .   ____          _            __ _ _

 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \

( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \

 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )

  '  |____| .__|_| |_|_| |_\__, | / / / /

 =========|_|==============|___/=/_/_/_/

 :: Spring Boot ::                (v2.7.6)

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.

***************************

APPLICATION FAILED TO START

***************************

Description:

The dependencies of some of the beans in the application context form a cycle:

┌──->──┐

|  com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration

└──<-──┘

Action:

Relying upon circular references is discouraged and they are prohibited by default. Update your application to remove the dependency cycle between beans. As a last resort, it may be possible to break the cycle automatically by setting spring.main.allow-circular-references to true.

Process finished with exit code 1

二、解决方法

1、方法一

在 pom.xml 配置文件中,将 pagehelper-spring-boot-starter 的版本调高一些

如当前版本为:

Java code?

<groupId>com.github.pagehelper</groupId>

<artifactId>pagehelper-spring-boot-starter</artifactId>

<version>1.2.12</version>

修改为:

Java code?

<groupId>com.github.pagehelper</groupId>

<artifactId>pagehelper-spring-boot-starter</artifactId>

<version>1.4.1</version>

2、方法二

在 application.yml 配置文件中,加入如下配置:

Java code?

spring:

  main:

    allow-circular-references: true

3、方法三

在 pom.xml 配置文件中,将 spring-boot-starter-parent 的版本调低一些

如当前版本为:

Java code?

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.7.6</version>

修改为:

Java code?

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.5.12</version>

  • 12
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
要在Spring Boot项目中导入com.github.pagehelper.PageHelper,你需要按照以下步骤进行操作: 1. 在你的项目的pom.xml文件中,添加以下依赖项: ```xml <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.13</version> </dependency> ``` 2. 在你的Spring Boot应用程序的配置文件(通常是application.properties或application.yml)中,配置PageHelper的属性。例如,你可以添加以下属性: ```properties # 开启PageHelper支持 pagehelper.helper-dialect=mysql pagehelper.reasonable=true pagehelper.support-methods-arguments=true pagehelper.params=count=countSql ``` 这些属性可以根据你的具体需求进行配置。 3. 在你的Mapper接口中使用PageHelper来实现分页查询。例如: ```java import com.github.pagehelper.PageHelper; import org.apache.ibatis.annotations.Mapper; import java.util.List; @Mapper public interface YourMapper { // 分页查询方法示例 List<YourEntity> selectByPage(int pageNum, int pageSize); } ``` 4. 在你的Service或Controller层调用Mapper接口中的分页查询方法,并传入页码和每页大小参数。例如: ```java import com.github.pagehelper.PageInfo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service public class YourService { @Autowired private YourMapper yourMapper; public PageInfo<YourEntity> getEntitiesByPage(int pageNum, int pageSize) { // 使用PageHelper进行分页查询 PageHelper.startPage(pageNum, pageSize); List<YourEntity> entities = yourMapper.selectByPage(pageNum, pageSize); return new PageInfo<>(entities); } } ``` 这样,你就成功地在Spring Boot项目中导入了com.github.pagehelper.PageHelper,并可以使用它进行分页查询了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值