一、javaweb项目css、js、图片等部署后样式缺失问题
原因:
1、filter过滤了这些文件
2、头部文件路径
3、前端出现问题的css引入路径
解决方案: 1、
// 转换类型
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
// 获取请求界面的路径
String uri = req.getRequestURI();
if (uri.contains(".css") || uri.contains(".js") || uri.contains(".png") || uri.contains(".jpg") || uri.contains(".gif")) {
// 如果发现是css,js,图片文件,直接放行
filter.doFilter(request, response);
} else {
// 在else中放对网页过滤的代码
// 调用下一个过滤器或web请求资源
filter.doFilter(request, response);
}
解决方案: 2、
也有可能是头部文件的路径不一致,删掉就行了
解决方案: 3、
${pageContext.request.contextPath}
它的作用是取出部署应用程序的名字,这样不管如何部署,所用的路径都是正确的
将路径
<link rel="stylesheet" href=“../plugins/bootstrap/css/bootstrap.min.css”>
换成
<link rel="stylesheet" href="${pageContext.request.contextPath}/plugins/bootstrap/css/bootstrap.min.css">
解决后
二,数据库乱码
在服务器获取到正确数据后,插入到数据库却出现乱码,很有可能是数据库的编码问题
可以在读取数据库的文件中加入
?serverTimezone=UTC&characterEncoding=utf8"
?useUnicode=true&characterEncoding=utf8
二选一(我用的是第二个)
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/db_school?useUnicode=true&characterEncoding=utf8
user=root
password=123456