<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>带数据给requestDemo2.html</title><metahttp-equiv="keywords"content="keyword1,keyword2,keyword3"><metahttp-equiv="description"content="this is my page"><metahttp-equiv="content-type"content="text/html; charset=UTF-8"><!--<link rel="stylesheet" type="text/css" href="./styles.css">--></head><body><!-- url后面如果跟了中文数据,要编码后在提交 --><ahref="/Servlet/servlet/RequestDemo2?username=xxx">点点</a><formaction="/Servlet/servlet/RequestDemo2"method="post">
用户名:<inputtype="text"name="username"><inputtype="submit"value="提交"></form></body></html>
package request;
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//获取请求头和请求数据
//获取请求数据的时候,一般都要先检查再使用
public class RequestDemo2 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
test1(request);
System.out.println("-----获取数据方式1------");
String value = request.getParameter("username");
//检查
if(value!=null&&!value.trim().equals("")){
System.out.println(value);
}
System.out.println("-----获取数据方式2------");
Enumeration e = request.getParameterNames();
while(e.hasMoreElements()){
String name = (String)e.nextElement();//username
value = request.getParameter(name);
System.out.println(name+"="+value);
}
System.out.println("-----获取数据方式3------");
String[] values = request.getParameterValues("username");/*for(String v:values){
System.out.println(v);
}*/
for(int i=0;values!=null&&i<values.length;i++){
System.out.println(values[i]);
}
System.out.println("-----获取数据方式4------");
//Map map = request.getParameterMap(); //做框架有用 Map<String,String[]>
System.out.println("-----获取数据方式5------");
//文件上传用这种
InputStream in = request.getInputStream();
int len = 0;
byte buffer[] = new byte[1024];
while((len=in.read(buffer))>0){
System.out.println(new String(buffer,0,len));
}
}
//获取头的相关方法
private void test1(HttpServletRequest request) {
String headValue = request.getHeader("Aceept-Encoding");
System.out.println(headValue);
System.out.println("-----------");
Enumeration e = request.getHeaders("Aceept-Encoding");
while(e.hasMoreElements()){
String value = (String)e.nextElement();
System.out.println(value);
}
System.out.println("-----------");
e = request.getHeaderNames();
while(e.hasMoreElements()){
String name = (String)e.nextElement();
String value = request.getHeader(name);
System.out.println(name+"="+value);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}