Servlet 入门—乱码问题
细心的同学可能发现,在上一篇文章里,无论是请求的数据还是响应的内容,我都是使用的英文!如果使用了中文就会出现乱码问题。
这篇文章就带大家去解决乱码问题。
配置
1. idea 配置, 所有的编码全部使用 utf-8

2. tomcat 的conf/目录下的 logging.properties
全部使用 utf-8,尤其是红框标出的地方!

3. 如果是 windows 的话,还需要再配置 VM options

完成以上配置后 接下来就是,写代码。
代码实操
代码层面只需要在 servlet 中添加两行代码,就能搞定!
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// req 对象获取客户端发送过来的请求参数
// 解决请求参数乱码
req.setCharacterEncoding("utf-8");
String username = req.getParameter("username");
String password = req.getParameter("password");
System.out.println("Your Input: " + username + "/" + password);
// 解决响应参数乱码
resp.setContentType("text/html;charset=utf8");
resp.getWriter().write("登录成功!");
}
重新启动 tomcat,验证。

点击登录,等待响应:
后台查看 idea 的控制台:

恭喜你,令程序员头疼的中文乱码问题,你已经掌握!
如果觉得还不错的话,关注、分享、在看(关注不失联~), 原创不易,且看且珍惜~

浙公网安备 33010602011771号