package com.bjsxt; import java.io.IOException; 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 HelloReq extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //获取请求行里面的信息 //getRequestLine(req); //获取请求头的信息 //getRequestHeader(req); //获取网路信息 //getRequestWeb(req); //获取实体内容信息 getRequestBody(req); } private void getRequestBody(HttpServletRequest req) { //获取用户名密码 String uname = req.getParameter("uname"); String pwd = req.getParameter("pwd"); System.out.println("HelloReq.getRequestBody()" + uname + pwd); //获取爱好 String[] fav = req.getParameterValues("fav"); if (fav != null) { for (int i = 0; i < fav.length; i++) { System.out.println("HelloReq.getRequestBody()" + fav[i]); } } } private void getRequestWeb(HttpServletRequest req) { System.out.println("HelloReq.getRequestWeb(客户端)" + req.getRemoteAddr() + ":" + req.getRemotePort()); System.out.println("HelloReq.getRequestWeb(服务器)" + req.getLocalAddr() + ":" + req.getLocalPort()); } private void getRequestHeader(HttpServletRequest req) { //获取指定请求头的信息 System.out.println("HelloReq.getRequestHeader()" + req.getHeader("Connection")); System.out.println("HelloReq.getRequestHeader()" + req.getHeader("Host")); //获取所有的请求头信息 Enumeration headerNames = req.getHeaderNames(); while (headerNames.hasMoreElements()) { String headName = headerNames.nextElement(); System.out.println(headName + ":" + req.getHeader(headName)); } } private void getRequestLine(HttpServletRequest req) { //获取请求方式 System.out.println("HelloReq.getRequestLine(请求方式)" + req.getMethod()); //获取资源路径 System.out.println("HelloReq.getRequestLine(服务器商资源的路径)" + req.getRequestURI()); System.out.println("HelloReq.getRequestLine(在网络中资源的整体路径)" + req.getRequestURL()); //获取Http版本号 System.out.println("HelloReq.getRequestLine(版本号:协议)" + req.getProtocol() + ":" + req.getScheme()); //获取项目名字 System.out.println("HelloReq.getRequestLine(项目的名字)" + req.getContextPath()); } }