不积跬步无以至千里,不积小流无以成江海
学习不是一蹴而就的事情,而是一个慢慢积累的过程。在此仅仅是为了记录我遇到的错误,在下次遇到时可以快速解决。
Java
1、tomcat服务器启动失败
1.1、如果在启动服务器时失败,且异常信息显示如下:
解决方法:如上信息可以看出,这是端口已经被占用,可以如此处理:https://blog.youkuaiyun.com/Steve_jack/article/details/106195741
1.2、如果在启动服务器时失败,且异常信息显示如下:
解决方法:
(1) 可以先将服务器中所有的Web应用移除(服务器右键Add and Remove-->Remove All-->Finish)
(2) 再分别执行服务器右键选项中的clean和Clean Tomcat Work Directory
(3) 再次启动服务器!,如果还是启动失败,可以将tomcat服务器重新配置一次到Eclipse中(将服务器和Server项目删除, 再点击链接重新创建服务器)
2、乱码
2.1、request请求的post方法中文乱码
解决方法:在获取请求参数的代码之前加一行代码
request.setCharacterEncoding("utf-8");
2.2、通过response获取字符流向浏览器发送中文数据时出现乱码问题
解决方法:在获取字符流数据的代码之前加一行代码
response.setContentType("text/html;charset=utf-8");
3、Maven
3.1、环境破坏
问题分析:由上面信息我们可以看出是两个插件出了问题
解决方法:由于这两个目录中插件太多,我们也不知道是哪个插件丢失或者是损坏,所以方法是将这两个目录全部删除,在更新项目,重新下载插件即可。
1)、保存eclipse中的代码,关闭eclipse。
2)、删除本地仓库中的所缺少的目录, 比如上面提示: org.apache.maven.plugins(根据上面错误信息提示的jar包路径选择删除)目录:
3.2、找不到jar包问题
在项目中通过坐标引入了jar包(或者插件),并且本地仓库中也存在对应的jar包,但是项目还是报错,提示内容说找不到。
解决方法:如果引入的jar包,在本地仓库中存在,但是还是提示找不到,可以将本地仓库中jar包或插件的所在目录整个删除(如果删除时提示文件正在被占用,关闭eclipse再删除即可),重新保存pom.xml文件,并更新工程,让maven再次下载上面的jar包即可!
未下载完全示例:
正常下载完全示例:
3.3、配置问题
检查maven目录中的settings.xml的标签语法配置是否正确
- 检测maven配置是否正确。
- 右键项目maven update 强制更新。
-
更换maven 私服仓库
4、Cookie
4.1、Cookie中保存中文数据
解决方法:
(1)将存入cookie中的先进行URL编码,再存入Cookie中
(2)从cookie取出来的数据是进行URL编码后的数据,在使用之前需要进行URL解码:
5、SpringBoot
1、
- 检查哪里对Cache进行了引用。
- 检查对Cache引用时实用的注解描述。
- 检查容器中Cache接口下实现类对象的定义。
2、
- 降低数据库驱动版本 (传统的maven项目通常会这么做)
- 在url中追加时区配置(serverTimezone=GMT%2B8)
3、数据库连不上
检查数据库服务是否启动,连接数据库的用户名,密码是否正确.
4、数据库版本或url配置问题
:检查数据的服务是否已启动,连接数据的url配置是否正确,数据库版本与驱动是否匹配
5、访问的数据库不存在
检查url配置的数据库是否存在.
6、指定命名空间下的元素ID已经存在
可能是GoodsDao接口或映射文件对应的映射元素有重复。
7、Mybatis绑定异常
- 检查接口类全名与映射文件中的命名空间是否不一致。
- 检查接口方法名与映射文件中的方法名是否不一致。
- 检查接口方法参数与映射文件可接收的参数不匹配。
- 检查接口对应的映射文件路径是否配置不正确(mapper-locations)。
8、Mybatis参数绑定异常
检查调用的dao方法参数与对应的SQL参数是否有映射关系.(SQL中的使用的ids参数可能没有使用@Param注解进行描述)
9、JVM端口号被占用
- 关闭已启动的tomcat,重新启动。
- 杀进程(windows)
- )查找进程id:netstat -ano|findstr "8080"
- )基于进程id杀进程:taskkill /f /pid 进程id
10、URL请求资源不存在
- 检查tomcat启动是否OK。
- 检查url对应的服务端资源是否匹配(客户端url与controller定义url)。
- 检查controller的包结构(所在包应在主启动类所在包的同包或子包中)。
- 检查项目中是否已添加thymeleaf依赖及配置(内置视图解析器)。
11、视图解析失败
- 视图解析器的配置有问题(有可能方法没有实用@ReponseBody修饰)。
- 解决方案:检查视图解析器前缀,后缀的配置。
后续遇到的问题会继续更新到这里,如果进来的你恰好也遇到了同样的问题,用这里的方法解决了的话请点个赞♥!