Servlet之Request

Request

        运行流程

        Http请求

        请求行

            获得客户端的请求方式:String getMethod()

            获得请求的资源:

                    String getRequestURI()              URI:资源

                    StringBuffer getRequestURL()      URL:地址

                    String getContextPath() ---web应用的名称

                    String getQueryString() ---- get提交url地址后的参数字符串   

username=zhangsan&password=123

           注意:request获得客户机(客户端)的一些信息

                     request.getRemoteAddr() --- 获得访问的客户端IP地址

        请求头

            long getDateHeader(String name)

                String getHeader(String name)

                Enumeration getHeaderNames()

                Enumeration getHeaders(String name)

            int getIntHeader(String name)

                 referer头的作用:执行该此访问的的来源  

做防盗链

        请求体

                请求体中的内容是通过post提交的请求参数,格式是:

                username=zhangsan&password=123&hobby=football&hobby=basketball

                key ---------------------- value

                username                    [zhangsan]

                password                    [123]

                hobby                         [football,basketball]

                以上面参数为例,通过一下方法获得请求参数:

                String getParameter(String name)

                String[] getParameterValues(String name)

                Enumeration getParameterNames()

                Map<String,String[]> getParameterMap()

                注意:get请求方式的请求参数 上述的方法一样可以获得

               解决post提交方式的乱码:request.setCharacterEncoding("UTF-8");

               解决get提交的方式的乱码:parameter = newString(parameter.getbytes("iso8859-1"),"utf-8");

        其他功能
                域对象     

                    request对象也是一个存储数据的区域对象,所以也具有如下方法:

                    setAttribute(String name, Object o)

                    getAttribute(String name)

                    removeAttribute(String name)

                    注意:request域的作用范围:一次请求中

                转发请求     

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

                    RequestDispatcher getRequestDispatcher(String path)

                    通过转发器对象转发

                    requestDispathcer.forward(ServletRequest request, ServletResponse response)

猜你喜欢

转载自blog.csdn.net/mmake1994/article/details/81025934