由于要是使用分页功能,git有一款非常好的分页插件pagehelper官网:
https://github.com/pagehelper/
根据文档,maven导入,
<PageHelper.version>5.1.10</PageHelper.version>

com.github.pagehelper pagehelper ${PageHelper.version}

配置拦截器(此例用在spring中的SqlSessionFactoryBean配置,文档有详细的配置信息):

    <property name="plugins">
        <array>
            <bean class="com.github.pagehelper.PageInterceptor">
                <property name="properties">
                    <!--使用下面的方式配置参数,一行配置一个 -->
                    <value>
                        <!--params=value1-->
                        <!--helperDialect=mysql //指定分页使用mysql数据库-->
                        reasonable=true   <!--合理化分页-->
                    </value>
                </property>
            </bean>
        </array>
    </property>

问题重点:
配置后pageHelper后 ,测试数据没问题,但是用tomcat启动报错:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘empController’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘empServiceImpl’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘empDao’ defined in file [D:\java\item\oa\target\oa-1.0-SNAPSHOT\WEB-INF\classes\com\de\dao\EmpDao.class]: Cannot resolve reference to bean ‘sqlSessionFactory’ while setting bean property ‘sqlSessionFactory’; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘sqlSessionFactory’ defined in class path resource [applicationContext.xml]: Cannot create inner bean ‘com.github.pagehelper.PageInterceptor#7cddc3db’ of type [com.github.pagehelper.PageInterceptor] while setting bean property ‘plugins’ with key [0]; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.github.pagehelper.PageInterceptor] for bean with name ‘com.github.pagehelper.PageInterceptor#7cddc3db’ defined in class path resource [applicationContext.xml]; nested exception is java.lang.ClassNotFoundException: com.github.pagehelper.PageInterceptor

总的来说就是找不到nested exception is java.lang.ClassNotFoundException: com.github.pagehelper.PageInterceptor,解决问题步骤:
一般这种编译测试通过,启动tomcat报错ClassNotFoundException:xxx,
首先看一下tomcat打包的依赖:
在这里插入图片描述
在这里插入图片描述
发现并没有打包pagehelper

然后看一下项目结构:
在这里插入图片描述

在这里插入图片描述
发现war_exploded并没有将pageHelper打包,
发现问题那就简单了,把pagehelper放到lib就行,
在这里插入图片描述
重启tomcat 成功运行!

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐