分页插件报错——is in module java.base of loader ‘bootstrap‘; .page is in unnamed module of loader ‘app‘

首先来看看错误提示

 class java.util.ArrayList cannot be cast to class com.github.pagehelper.Page (java.util.ArrayList is in module java.base of loader 'bootstrap'; com.github.pagehelper.Page is in unnamed module of loader 'app')

根据这个提示上网查了一堆,很多都是说数据类型的转换错误之类的。

ClassCastException: XXX are in unnamed module of loader ‘app‘异常分析_=PNZ=BeijingL的博客-CSDN博客

看看源代码

 @Override
    public PageBean page(Integer page, Integer pageSize,String name, Short gender,LocalDate begin,LocalDate end) {
        //1. 设置分页参数
        PageHelper.startPage(page,pageSize);
        //2. 执行查询
        List<Emp> empList = empMapper.list(name, gender, begin, end);
        Page<Emp> p = (Page<Emp>) empList;

        //3. 封装PageBean对象
        PageBean pageBean = new PageBean(p.getTotal(), p.getResult());
        return pageBean;
    }

跟着教程做的,那个代码可以运行,这个却不行,后来才发现不知是因为这个分页插件是不是不支持springboot3.0还是不知jdk17的原因,

就是不支持springboot3.0以上的版本, 把版本降到2.0的就可以解决了,这里JDK版本是17还是11都没有关系,但是springboot3.0以上版本最低都要求JDK17了

   <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <!--<version>3.0.5</version>-->
        <version>2.7.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

同时分页插件一直没显示的图案也显示了出来

 看来Springboot和JDK版本不是越高越好,很多老东西都不支持了,根据实际需求进行选择,这个分页插件也不是必须的,也可以自己写SQL。

猜你喜欢

转载自blog.csdn.net/m0_62327332/article/details/129786180