JavaEE请求对象

1.请求对象类型与生命周期

JavaEE请求对象要实现javax.servlet.http.HttpServletRequest接口。

在web组件开发中,不需要servlet和jsp自己创建对象,他们由web容器自动创建,并传递给
servlet和jsp的服务方法doGet和doPost,在服务处理方法中直接使用请求对象即可。

protected void doGet(HttpServletRequest request, HttpServletResponse response) 
throws ServletException, IOException{}

2.请求对象的功能

(1).取得请求头的信息
(2).取得请求体中包含的提交数据
(3).取得客户端的相关信息
(4).取得服务端的相关信息
(5).取得请求对象的属性信息

3.取得请求头方法

(1). String getHeader(String name)
取得指定请求头字符串类型的内容

String browser=request.getHeader("User-Agent");

(2). int getIntHeader(String name)
取得指定请求头整型类型的内容

int size=request.getIntHeader("Content-Length");

(3).long getDateHeader(String name)
取得指定请求头日期类型的内容,返回long型表示从1970年1月1日0点开始计时的毫秒数

long datetime=request.getDateHeader("If-Modify-Since");

(4).Enumeration getHeaderNames()
取得所有请求头的列表,以枚举类型返回

for(Enumeration enum=request.getHeaderNames();enum.hasMoreElements();){
    String headername=(String)enum.nextElement();
    System.out.println("name:"+headername);
}

4.取得请求体中的数据

(1).String getParameter(String name)
取得指定名称的数据类型,主要用于处理表单数据

员工编号:<input type="text" name="userid" />
String id=request.getParameter("userid");

(2).String[] getParameterValues(String name)
取得指定名称的数据数组,主要用于处理复选框和下拉菜单

爱好:<input type="checkbox" name="behave" value="travel" />旅游
     <input type="checkbox" name="behave" value="read" />读书
     <input type="checkbox" name="behave" value="PE" />体育
String[] behaves=request.getParameterValues("behave");
for(int i=0;i<behaves.length;i++){
    out.println("behaves[i]");
}

(3).Enumeration getParameterNames()
取得所有参数的名称

for(Enumeration enum=request.getParameterNames();enum.hasMoreElements();){
    String paramname=(String)enum.nextElement();
    System.out.println("name:"+paramname);
}

(4).Map getParameterMap()
取得所有请求对象的参数名和值,包装在一个Map对象中,可以使用这个对象同时取得
所有参数名和参数值

Map params=request.getParameterMap();
Set names=params.keySet();
for(Object o:names){
    String paramname=(String)o;
    out.print(paramname+"="+params.get(paramname)+"<br/>");
}

(5).ServletInputStream getInputStream() throws IOExcepyion
取得客户提交的流
注意:getInputStream()方法和getParameter()方法不能同时使用

5.取得客户端相关信息

(1).String getRemoteHost()
取得请求客户的主机名

(2).String getRemoteAddr()
取得请求客户的IP地址

(3).int getRemotePort()
取得请求客户的端口号

(4).String getProtocol()
取得请求协议

(5).String getContentType()
取得请求体的内容类型,以MIME表达

(6).int getContentLength()
取得当请求体为二进制流时请求体的长度

(7).String getProtocol()
取得请求的协议,一般为HTTP,返回HTTP1.1

6.取得服务端信息

(1).String getServerName()
取得服务器的HOST,一般为IP地址

(2).int getServerPort()
取得服务器的接收端口

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值