声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!!
文章目录
a,直接在浏览器地址栏输入某个地址。
b,点击链接
c,表单默认的提交方式
a,设置表单method="post"。
a,请求参数会添加到请求资源路径的后面,只能添加
少量的参数(因为请求行只有一行,大约只能存放2K
左右的数据)。
b,请求参数会显示在浏览器地址栏(路由器会记录
请求地址)。
a,请求参数添加到实体内容里面,可以添加大量的
参数。
b,相对安全,但是,post请求不会对请求参数进行
加密处理(可以使用https协议来保证数据安全)。
1) String request.getParameter(String paramName);
注意:如果paraName对应的值不存在,返回null。
2) String[] request.getParameterValues(String paramName);
当有多个参数名相同的时候,用该方法。
默认情况下,out.println会使用"iso-8859-1"
来进行编码。
response.setContentType("text/html;charset=utf-8");
注意,编码格式只要支持中文即可,比如,还可以设置为 gbk。
这行代码的作用有两个:
作用1:生成一个消息头(content-type),告诉
浏览器,服务器返回的数据类型和编码格式
作用2:也设置了out.println在输出时使用的编码格式。
注意:
这里说的是表单有中文参数,表单post/get提交方式的编码处理问题。
初学者容易,直接写一个类似带中文的地址,在浏览器上进行测试,如
http://localhost:8080/web02/hello?name=yyh_帅气华
这样就不对了,说的不是一回事。
当表单提交时,浏览器会对表单中的中文使用
浏览器打开表单所在的页面时的编码格式进行编码。
方式一:
step1,要保证表单所在的页面按照指定的编码格式打开。
content="text/html;charset=utf-8">
step2,让服务器按照指定的编码格式进行解码。
request.setCharacterEncoding("utf-8");
只对post请求有效。
方式二:
step1,同上。
step2,
name = new String(
name.getBytes("iso-8859-1"),"utf-8");
a,java语言在内存当中以unicode编码格式(字符集)
来保存一个字符。
b,编码:将unicode编码格式对应的字节数组转换成
某种本地编码格式(gbk,utf-8,gb2312)对应的字节
数组。
c,解码:将某种本地编码格式对应的字节数组转换成
unicode编码格式对应的字节数组。
