前军教程网

中小站长与DIV+CSS网页布局开发技术人员的首选CSS学习平台

HttpServletRequest 对象 在httpservlet中如何获得httpsession对象的引用

HttpServletRequest 其实就是 tomcat 为我们封装的请求对象;

HttpServletRequest 是 ServletRequest 接口的子接口,表示 HTTP 协议的请求对象;包含了获取各自请求信息的方法;

常见的方法

String getContextPath():获取上下文路径,<Context path="上下文" ../>

String getHeader(String headName):根据指定的请求头获取对应的请求头的值.

String getRequestURI():返回当期请求的资源名称. 上下文路径/资源名

StringBuffer getRequestURL():返回浏览器地址栏的内容

String getRemoteAddr():返回请求服务器的客户端的IP


简单演示一下

(页面)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    < action="/teacher" method="post">
        账户:<input type="text" name="username"/><br/>
        密码:<input type="password" name="password"/><br/>
        爱好:<input type="checkbox" name="likes" value="1"/>吹牛p
              <input type="checkbox" name="likes" value="2"/>听别人吹牛p
              <input type="checkbox" name="likes" value="3"/>看妞
              <input type="submit" name="提交"/>
    </from>
</body>
</html>

(后台)

    @Override
    protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
        // 接收前台传过来的值
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        System.out.println("账户:"+username);
        System.out.println("密码:"+password);

        //接收多个值
        String[] likes = req.getParameterValues("likes");
        System.out.println("爱好:"+ Arrays.asList(likes));

        // 获取服务端的ip 谁的电脑访问我我就获取谁的id
        String host = req.getHeader("Host");
        System.out.println("当前服务端ip:" + host);

        // 获取客户端的ip
        String remoteHost = req.getRemoteHost();
        System.out.println("当前客户端ip:" + remoteHost);

        // 上下文+ url-pattern
        String requestURI = req.getRequestURI();
        // 协议://ip:端口+上下文+url-pattern
        StringBuffer requestURL = req.getRequestURL();
        System.out.println("requestURI" + requestURI);
        System.out.println("requestURL" + requestURL);

        // 获取到所有的参数名
        Enumeration<String> parameterNames = req.getParameterNames();
        // 类似迭代器 一样遍历
        while (parameterNames.hasMoreElements()) {
            // 获取到 参数名
            String paramName = parameterNames.nextElement();
            // 根据参数名获取到 参数值
            String paramValue = req.getParameter(paramName);
            System.out.println(paramName + " " + paramValue);
        }
    }

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言