HttpServletRequest接口

1.介绍:
1)HttpServletRequest接口来自于Servlet规范中,在Tomcat中存在servlet-api.jar

2)HttpServletRequest接口实现类由Http服务器负责提供

3)HttpServletRequest接口负责在doGet/doPost方法运行时读取Http请求协议包中信息

4)开发人员习惯于将HttpServletRequest接口修饰的对象称为【请求对象】
2.作用:
1)可以读取Http请求协议包中【请求行】信息

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

                    //1.通过请求对象,读取【请求行】中【url】信息
                    String url = request.getRequestURL().toString();
                    //2.通过请求对象,读取【请求行】中【method】信息
                    String method = request.getMethod();

                    //3.通过请求对象,读取【请求行】中uri信息
                    /*
                    * URI:资源文件精准定位地址,在请求行并没有URI这个属性。
                    *      实际上URL中截取一个字符串,这个字符串格式"/网站名/资源文件名"
                    *      URI用于让Http服务器对被访问的资源文件进行定位
                    */
                    String uri =  request.getRequestURI();// substring

                    System.out.println("URL "+url);
                    System.out.println("method "+method);
                    System.out.println("URI "+uri);

            }

2)可以读取保存在Http请求协议包中【请求头】或则【请求体】中请求参数信息

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

                    //1.通过请求对象获得【请求头】中【所有请求参数名】
                    Enumeration paramNames =request.getParameterNames(); //将所有请求参数名称保存到一个枚举对象进行返回
                    while(paramNames.hasMoreElements()){
                        String paramName = (String)paramNames.nextElement();
                        //2.通过请求对象读取指定的请求参数的值
                        String value = request.getParameter(paramName);
                        System.out.println("请求参数名 "+paramName+" 请求参数值 "+value);
                    }
              }

3)可以代替浏览器向Http服务器申请资源文件调用

  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                    //通知请求对象,使用utf-8字符集对请求体二进制内容进行一次重写解码
                    request.setCharacterEncoding("utf-8");
                    //通过请求对象,读取【请求体】参数信息
                    String value = request.getParameter("userName");
                    System.out.println("从请求体得到参数值 "+value);

            }

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

                    //通过请求对象,读取【请求头】参数信息
                    String userName = request.getParameter("userName");
                    System.out.println("从请求头得到参数值 "+userName);
             }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值