【JavaWeb】HttpServletRequest即Request请求

1、通过Request获得请求行

方法:

String getRequestURI()  (获取所有资源地址,相对地址,绝对地址,网络地址)

StringBuffer getRequestURL()  (获取网络资源地址)

最重要的是:

String getContextPath()  (获得web应用的名称)在开发过程中尽量所有的有web应用名称的地方调用getContextPath()


代码:String contextpath=request.getContextPath()

2、通过Request获得客户机的信息

方法:

代码:String remoteAddr=request.getRemoteAddr();

提示:cmd  里通过Ping某个网址可以拿到这个网址的外网IP地址

3、通过Request获得请求头

String getHeader(String name)  这个方法用的比较多,通过传入参数name的这个键,获得对应的值

4、通过Request获得请求参数

方法;

①获取单个值:

String getParameter(String name)   传入name单个键,返回name键对应的值

②获取多个值:(例如页面里多选的情况)

String[  ]  getParameterValues(String name)  传入name单个键,返回name键对应的多个值,返回到string

数组里

③获得所有的参数,封装到一个map中Map<String,String [ ]>

Map gerParameterMap()

代码:

Map<String,String [ ]> parameterMap=request.gerParameterMap();

for(Map.Entry<String,String [ ]>,entry : parameterMap.entrySet())  //增强for遍历

{/........}



-------------------------------------------------分割线----------------------------------------------

5.Request完成请求转发

获得请求转发器----path是转发的地址

 RequestDispatcher   dispatcher =getRequestDispatcher(String path)

执行转发方法

dispatcher.forward(request,response)


6.Request作为域对象

原因:每次访问request和response都是新创建的对象,作用范围是一次请求中

方法:

setAttribute(String name, object o)

getAttribute(String name)

removeAttribute(String name)

-------------------------------------------------分割线----------------------------------------------

注意:

①和servletContext比较:

ServletContext  创建:服务器启动                    Request         创建:访问时创建

                        销毁:服务器关闭                                         销毁:响应结束时

              域作用范围:整个web应用                             域作用范围:一次请求中

②重定向与转发区别:

重定向:两次请求,地址改变,可访问外部网站 

转发:一次请求,地址不变,只能内部资源,转发性能优于重定向

注意:重定向地址不改变,当用户刷新时,存在页面刷不刷新回去的问题

③客户端地址与服务器端地址区别:

客户端地址:写上web应用名称

直接输入的地址,重定向地址

服务器端地址:不需要写上web应用名称

转发


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值