Request获取请求头的方式:
方式1:
String headValue=request.getHeader(“要共取头的名字”);
方式2:
Enumeration e=request.getHeaders(“要共取头的名字”);
While(e.hasMoreElements()){
String value=(String)e.nextElement();
}
获取请求头的名称:
Enumeration e= request.getHeaderName();
while(e.hasMoreElements()){
String name=(String) e.nextElement();
String value=request.getHeader(name);
System.out.println(name+”=”+value);
}
Request获取请求数据的方式:
方式1:
String value=request.getParameter(“username”);
用一个String变量接收要取得的的数据,username代表提交数据时所起的名字。这句话的意思是:在把数据提交到某个域中,用request.getPameter()在这个域名中录找名为username所对应的值;
方式2:
Enumeration e=request.getParameterNames();
While(e.hasMoreElements()){
String name=(String)e.nexxtElement();
Value=request.getParameter(name);
}
把从域中所有数据的名字接收放入Enumeration 对象e中;通过while循环取到每个数的名字name,value是取到每个名字name所对应的值;
方式3:
String [] values=request.getParameterValue(“username”);
For(int i=0:value!=null&&i<values.length:i++){
String value1=values[i];
}
通过values数组所有名字为username所对应的值获取到该数组中,再用for 循环取到每个值;
这种方式适合提交的数据名字相同但值不同的数据;
方式4:
Map<String,String[]>map=request.getParameterMap();
User user=new User();
Try{
BeanUtils.populate(user.map);
//BeanUtils.copyProperties(user, formbean)
}catch(Exception e){
e.printStackTrace();
}
用map获取数据,定义用来封装数据的对象user的(提前定义user类,用来设置各获取数据)
调用BeanUtils对象的方法populate把map中的数据填充的到user对象中;
Map<Sring, String[]>
String代表数据的名字;String[]代表每个名字对应的值;
BeanUtils.copyProperties(user,formbean);
Formbean代表用户的表单;
User对象;
把formbean的数据拷贝到user对象中;
方式5:
InputStream in =reques.getInputStream();
Int len=0;
byte[]buffer[]=new byte[1024];
while(len=in.read(buffer)>0){
value=new String(buffer,0,len);
}
通过输入流获取数据;