添加其他部门后,部门文字显示乱码
# 具体遇到的问题
# 报错信息的截图
# 相关课程内容截图
# 尝试过的解决思路和结果
我猜是encoding的问题,不过也没看出个所以然
# 粘贴全部相关代码,切记添加代码注释(请勿截图)
<filter>
<filter-name>encoding</filter-name>
<filter-class>com.imooc.oa.global.EncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
package com.imooc.oa.global;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class EncodingFilter implements Filter {
private String encoding="utf-8";
public void init(FilterConfig filterConfig) throws ServletException {
if (filterConfig.getInitParameter("encoding")!=null){
encoding = filterConfig.getInitParameter("encoding");
}
}
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest request =(HttpServletRequest)servletRequest;
HttpServletResponse response = (HttpServletResponse)servletResponse;
request.setCharacterEncoding(encoding);
response.setCharacterEncoding(encoding);
filterChain.doFilter(request,response);
}
public void destroy() {
}
}
在这里输入代码,可通过选择【代码语言】突出显示
31
收起
正在回答
1回答
同学你好,同学的编码过滤器代码并没有什么问题,这里建议同学在DepartmentController中的add()方法增加输出语句,添加部门,查看输出的department的name和address是否乱码。如:
如果这里输出不乱码,建议同学查看一下数据库中存储的数据是否乱码。
如果数据库中数据乱码,可能是数据库和项目使用的编码方式不同造成的,建议同学链接数据库时,指定一下编码方式,如:
然后删掉数据库中的乱码数据,重新添加部门再试试。
4. SSM到Spring Boot入门与综合实战
- 参与学习 人
- 提交作业 323 份
- 解答问题 8263 个
本阶段将带你学习主流框架SSM,以及SpringBoot ,打通成为Java工程师的最后一公里!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星