java servlet 请求_java servlet请求数据

* 获取请求数据

* 请求数据:

* 请求行:请求方式 请求url 协议

* getMethod(); 返回请求方式

* getRequestURL();返回请求url

* getREquestUri();返回请求URI

* ` getQueryString(); 返回get请求 中url中的用户数据 注意:post没有此方法

* getScheme();返回协议

*

* 请求头

* getHeader(String name) 根据键名获取请求头信息

* 注意:如果获取的请求头信息不存在返回null

* getHeaderNames() 返回储存了请求头键名的枚举集合

* 请求实体

* getParamenter(String name) 根据键名获取数据

* 键名其实就是前端页面中的表单标签的name属性的值或者前端页面其他 * 方式提交数据的键的名字

* 如果请求中没有对应的请求数据,则返回null.

* getParameterValues(Sting name)获取同名不同值的实体数据,返回数 * 组

* 如果没有对应的键名,返回null

* getParamenterNames() 返回实体数据中键名的枚举

* 请求相关的网络数据

* getRemoteAddr(); 获取客户端的IP地址

* getRemotePort(); 获取客户端的端口号

* getLocalAddr(); 获取服务器端的IP地址

* getLocalPort(); 获取服务器的端口号

public class RequestServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

@Override

protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

//获取请求信息

//获取请求行信息

//获取请求方式 (默认)请求方式:GET

String method=req.getMethod();

System.out.println("请求方式:"+method);

//获取请求URL 请求url:http://localhost:8080/code/req

StringBuffer url=req.getRequestURL();

System.out.println("请求url:"+url.toString());

//获取请求URI 请求uri:/code/req

String uri=req.getRequestURI();

System.out.println("请求uri:"+uri);

//获取get请求url中的请求数据 取get请求url中的请求数据:ename=zhangsan&psw=123

String query = req.getQueryString();

System.out.println("取get请求url中的请求数据:"+query);

//获取协议 获取请求协议:http

String scheme = req.getScheme();

System.out.println("获取请求协议:"+scheme);

//请求头信息

//根基键名获得请求 头信息

/*获取浏览器版本信息:Mozilla/5.0 (Windows NT 10.0; WOW64)

AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36*/

String agent = req.getHeader("User-Agent");

System.out.println("获取浏览器版本信息:"+agent);

//获取请求头中键名的枚举host

/*connection

cache-control

upgrade-insecure-requests

user-agent

accept

accept-encoding

accept-language

cookie*/

Enumeration headerNames = req.getHeaderNames();

while(headerNames.hasMoreElements()) {

//获取请求头键名

String name=(String)headerNames.nextElement();

//获取请求头对应的值

String value = req.getHeader(name);

System.out.println(name+":"+value);

}

//获取请求实体数据(用户数据)

//根据键名获取数据

String uname = req.getParameter("uname");

String psw = req.getParameter("psw");

System.out.println("请求实体数据"+uname+":"+psw);

//获取同名不同值的实体数据

String[] favs = req.getParameterValues("fav");

if (favs!=null) {

for(String s:favs) {

System.out.println("fav的值"+s);

}

} else {

System.out.println("爱好为空");

}

//获取请求实体中键名的枚举

Enumeration names = req.getParameterNames();

while(names.hasMoreElements()) {

//获取键名

String name=(String)names.nextElement();

//判断

if ("fav".equals(name)) {

String[] favs2 = req.getParameterValues("fav");

if (favs!=null) {

for(String s:favs2) {

System.out.println(name+":"+s);

}

}

//获取值

String value = req.getParameter(name);

System.out.println(name+":"+value);

}

}

//获取相关的网络数据

//获取客户端信息

String remoteAddr = req.getRemoteAddr();

System.out.println("获取客户端的IP地址:"+remoteAddr);

//获取客户端的端口号(浏览器)

int remotePort = req.getRemotePort();

System.out.println("获取客户端的端口号:"+remotePort);

//获取服务器主机IP

String localAddr = req.getLocalAddr();

System.out.println("获取服务器的IP地址:"+localAddr);

//获取服务器的端口号

int localPort = req.getLocalPort();

System.out.println("获取服务器的端口号:"+localPort);

//处理请求信息l

//响应处理结果

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值