学习servlet时,在HTML表单提交了中文参数并输出到控制台,结果是NCR编码格式
@WebServlet(urlPatterns = {"/demo1","/demo2"})
public class ServletDemo extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("UTF-8");
String username=req.getParameter("username");
System.out.println(StringEscapeUtils.unescapeHtml(username));
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doGet(req,resp);
}
}
切换commons-lang3
依赖包的版本为3.4
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
方法改为StringEscapeUtils.unescapeHtml4("的")