六、遇到的问题
1.项目无法部署
Artifact wmmbooks:war exploded: Error during artifact deployment. See server
解决办法:
右键点击把jar包导进去
2.数据库连接错误c3p0
检查数据库db.properties
- java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed
- 只要在url的后边加上allowPublicKeyRetrieval=true
- java.sql.SQLException: Access denied for user ‘Administrator’@‘localhost’
- 有可能是username和系统的出现了冲突,修改为user解决。
- 8.0以后的数据库连接要加.cj,5.0的不用加
driver=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/wmmbooks?useSSL=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&allowPublicKeyRetrieval=true
- 也有可能是useSSL=true,修改为false就好。
- serverTimezone=UTC,时区问题,有的是GMT
- ORG.MYBATIS.SPRING.MYBATISSYSTEMEXCEPTION: NESTED EXCEPTION IS ORG.APACHE.IBATIS.EXCEPTIONS
- 这个问题就是你的数据库操作写错了。可能是参数类型和结果类型写错了
3.配置文件
它说没有找到这个bookService,我们可以根据下面的思路来一步步进行
排错思路(重要)
问题是:bean不存在
步骤:
- 查看这个bean注入是否成功
2.Junit单元测试,看代码是否能否查询出来结果
3.问题不在底层,那就是spring出现了问题
4.SpringMVC在整合的时候没调用到我们的service层的bean;
- applicationContextxml中没有注入bean
- web.xml中我们也绑定过配置文件,发现问题,我们配置的是spring-mvc.xml,这里确实没有service bean,所以报错
至此找到问题,可以跳转。剩下的就是优化。