表单处理如何获得请求参数值以及如何处理表单中的中文
表单处理1)如何获得请求参数值。
a,String request.getParameter(String paraName);
要注意的问题:
如果paraName与实际的请求参数名不一致,
则返回null。
如果没有输入参数值,则返回""。
b,String[] request.getParameterValues(String
paraName);
用在有多个请求参数名相同的情况下使用。
比如 ?interest=fishing&interest=cooking
2)如何处理表单中的中文
a,浏览器会如何对表单中的数据进行
编码?
当表单采用post方式提交时,浏览器会按照
打开该表单所在的页面的编码来对表单中的
数据进行编码。
b,在html文件当中,添加以下代码的作用
<meta http-equiv="content-type" content=
"text/html;charset=utf-8">
作用1:模拟http消息头(content-type),
让浏览器以utf-8的编码格式来打开该页面
(要确保html文件本身确定是使用utf-8保存的)。
作用2: 确保浏览器按指定的编码来对
表单中的数据进行编码。
c,解决方案:
step1:
在html文件中,添加
<meta http-equiv="content-type" content=
"text/html;charset=utf-8">
另外,表单的提交方式必须是post。
step2:
在服务器端,使用servlet读取表单中的
请求参数时:
request.setCharacterEncoding("utf-8");
这行代码的作用:设置解码时的编码格式。
如果servlet输出中文,要添加如下代码。
response.setContentType(
"text/html;charset=utf-8");
这行代码的作用:
作用1:指定out.println输出时所使用的编码。
作用2:生成一个消息头
content-type:text/html;charset=utf-8
告诉浏览器,返回的数据类型是html,编码是
utf-8。这样,浏览器一定会以指定的编码来
显示该页面。
页:
[1]