1.数据库版本及url配置问题---java.sql.SQLException,如图:
其解决方案为:java
- 1)下降数据库驱动版本 (传统的maven项目一般会这么作)
- 2)在url中追加时区配置(serverTimezone=GMT%2B8)
2.数据库服务链接不上---java.net.ConnectException:Connection refused:connect
问题分析:检查数据库服务是否启动,链接数据库的用户名/密码是否正确sql
3.数据库版本或url配置问题---jdbc.DataSourceProperties$DataSourceBeanCreationException:Failed to detemine a suitable driver class
问题分析:检查数据的服务是否已启动,链接数据的url配置是否正确,数据库版本与驱动是否匹配数据库
4. 访问的数据库不存在---java.sql.SQLSynaxErrorException:Unkown database 'xxx'
问题分析:检查url配置的数据库是否存在或数据库名是否写错apache
5. 指定命名空间下的元素已经存在---java.lang.IllegalArgumentException:
Caused by: java.lang.IllegalArgumentException:
Mapped Statements collection already contains value for
com.cy.pj.goods.dao.GoodsDao.deleteObject. please check file
[D:\WORKSPSTS\CGB-SBOOT-01\target\classes\mapper\ GoodsMapper.xml]
and com/cy/pj/goods/dao/GoodsDao.java (best guess)
解决方案为:多是GoodsDao接口或映射文件对应的映射元素重复(你能够根据本身错误提示中去寻找本身的接口或映射元素)windows
6.单元测试方法没有找到--java.lang.Exception:No tests found matching
解决方案:tomcat
- 1)单元测试方法可能使用了private修饰,有返回值或有参数。
- 2)单元测试方法没写@Test注解。
- 3)Spring Boot项目有多个启动类。
- 4)Spring Boot 单元测试类没有写在单元测试包中。
7. MyBatis绑定异常---org.apache.ibatis.binding.BindingException:Invalid bound statement(not bound)
问题分析:app
- 1)检查接口类全名与映射文件中的命名空间是否不一致。
- 2)检查接口方法名与映射文件中的方法名是否不一致。
- 3)检查接口方法参数与映射文件可接收的参数不匹配。
- 4)检查接口对应的映射文件路径是否配置不正确(mapper-locations)。
8. MyBatis 参数绑定异常---org.apache.ibatis.binding.BindingException:Parameter 'ids' not found
问题分析:检查调用的dao方法参数与对应的SQL参数是否有映射关系.(SQL中的使用的ids参数可能没有使用@Param注解进行描述)maven
9. JVM端口号被占用---java.net.BindException: Address already in use: bind
Caused by: java.net.BindException: Address already in use: bind
at sun.nio.ch.Net.bind0(Native Method) ~[na:1.8.0_45]
at sun.nio.ch.Net.bind(Unknown Source) ~[na:1.8.0_45]
at sun.nio.ch.Net.bind(Unknown Source) ~[na:1.8.0_45]
其解决方案为:单元测试
- 1)关闭已启动的tomcat,从新启动。
- 2)杀进程(windows)
a)查找进程id:netstat -ano|findstr "8080"测试
b)基于进程id杀进程:taskkill /f /pid 进程id
10. URL请求资源不存在--not found (404)
解决方案:
- 1)检查tomcat启动是否OK。
- 2)检查url对应的服务端资源是否匹配(客户端url与controller定义url)。
- 3)检查controller的包结构(所在包应在主启动类所在包的同包或子包中)。
- 4)检查项目中是否已添加thymeleaf依赖及配置(内置视图解析器)。
11. 视图解析失败--Internal Server Error,status=500
解决方案:
- 1)视图解析器的配置有问题(有可能方法没有实用@ReponseBody修饰)。
- 2)解决方案:检查视图解析器前缀,后缀的配置。
12. 以后将还会有其他错误的更新及其解决方法(等待更新)