发现一个问题,关于post请求中文乱码问题

来源:2-17 Servlet生命周期

JakePrim

2020-01-06 20:09:05

public class RequestMethodServlet extends HttpServlet {
	/**
	 * 
	 */
	private static final long serialVersionUID = -997883298129404528L;

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		
		String name = req.getParameter("name");
		resp.setCharacterEncoding("UTF-8");
		resp.setHeader("content-type", "text/html;charset=UTF-8");
		resp.getWriter().println("<h1 style='color:green;'>"+name+"</h1>");
	}

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		//解决post请求中文乱码问题
		req.setCharacterEncoding("UTF-8");
		String name = req.getParameter("name");
		resp.setCharacterEncoding("UTF-8");
		resp.setHeader("content-type", "text/html;charset=UTF-8");
		resp.getWriter().println("<h1 style='color:red;'>"+name+"</h1>");
	}
}


写回答

1回答

好帮手慕小班

2020-01-07

同学你好,这里同学是否想表达req.setCharacterEncoding("UTF-8");的内容并没有解决post请求中的中文乱码问题。

    如果是,这里老师测试了同学贴出代码,运行后Post方法中并没有出现中文乱码问题,例如:

http://img.mukewang.com/climg/5e13ecf60967a89605290149.jpg

关于解决请求过程中的中文乱码问题,在后面的《Servlet与JSP进阶》课程的第四章具体介绍了中文乱码问题

http://img.mukewang.com/climg/5e13ed37094a027302890152.jpg

同学可以在具体学习了这个内容后,再来调整编码问题。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0
hakePrim
h 我想表达的是 req.setCharacterEncoding("UTF-8"); 这句话可以解决post请求中文乱码的问题.
h020-01-07
共1条回复

0 学习 · 9666 问题

查看课程