Servlet学习D3 ---- 解决请求表单数据乱码问题

解决请求表单数据乱码问题

一、servlet的能力

1, 获取浏览器提交的表单数据

2, 获取浏览器的附加信息

3, 处理数据

4, 给客户端产生一个相应

5, 在相应中添加附加信息

二、获取浏览器提交的表单数据

String value = request.getParameter(String key);

String[] arr = request.getParameterValues(String key);

在获取表单数据时,如果表单数据中含有中文,此时会产生乱码。

乱码解决方式:

1, 通用方式:

String value  = request.getParameter("username");
      value = new 
String(value.getBytes("iso-8859-1"),"utf-8");
      System.out.println(value);

2, 解决post提交时所产生的乱码问题

//注意不能解决get提交表单时的中文乱码问题
     request.setCharacterEncoding("utf-8");
     String value  = 
     request.getParameter("username");

3.解决get提交表单时的乱码问题

需要修改tomcat的配置文件(server.xml)–添加URIEncoding=“utf-8”

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="utf-8"/>

猜你喜欢

转载自blog.csdn.net/c22cxz/article/details/88998249