和值附在原URL之后传输。请求以
url?param1=value1¶m2=value2&…ParamN=valueN
获取get请求里包含的请求参数和值: 方法一、使用URLDecoder解码 //解码前的请求字符串
String rawQueryStr = request.getQueryString(); //使用URLDecoder解码后的字符串 String queryStr =
java.net.URLDecoder.decode(rawQueryStr,”gb2312”); String[] paramPairs = queryStr.split(“&”); for(String paramPair : paramPairs){
String[] nameValue = paramPair.split(“=”); String paramName = nameValue[0]; String paramValue = nameValue[1]; }
方法二、直接用ISO-8859-1字符串分解成字节数组,然后在重新解码成字符串
byte[] rawBytes = rawName.getBytes(“ISO-8859-1”); String name = new String(rawBytes,”gb2312”);
POST方式:
表单method为“post“,请求参数大小一般无限制。请求参数名和值放在HTML HEADER中传输,安全性较高 获取post请求里包含的的请求参数和值: //当请求参数只有一个值时
String paramValue=request.getParameter(String paramName); //当请求参数有多个值时
String[] paramValues=request.getParameterValues(String paramName);
如果不知道paramName可通过getParameterNames方法获取,然后遍历。
5.3.8 表单
//以下不属于表单内容
5.3.9 Cookie
Cookie可保留在客户端,与Seesion不同的是它不会随浏览器关闭而失效,而是在Cookie的生命期内一直有效。 创建Cookie
//创建一个Cookie对象保存用户名信息
Cookie cUserName = new Cookie(\//设置Cookie的生命周期 cUserName.setMaxAge(24*3600); //向客户端增加Cookie对象 response.addCookie(cUserName); 使用Cookie
//获取本站在客户端上保留的所有Cookie,用于获取cookie中是否保存过用户名和密码信息
Cookie[] cookies = request.getCookies(); Boolean hasUserNameCookie = false; Boolean hasUserPassCookie = false;