由于要是使用分页功能,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 成功运行!