Servlet 基础-如何获取浏览器提交的参数

通过登录行为,演示servlet如何获取从浏览器提交的账号密码

  • 创建 login.html

    在web上右键 -> New ->File
    创建一个 login.html文件
    然后添加一个form元素
    action="login" 标题会提交到login路径,login路径在后续步骤会映射到LoginServlet
    method="post" post方式表示提交的密码信息在浏览器地址栏看不到

    接着准备账号和密码的input元素
    因为要提交两个数据,在servlet端为了区分哪个是账号,哪个是密码,要给这两个input元素的name属性分别叫做name和password。

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>登录页面</title>
    </head>
    <body>
      
    <form action="login" method="post">
    账号: <input type="text" name="name"> <br>
    密码: <input type="password" name="password"> <br>
    <input type="submit" value="登录">
    </form>
      
    </body>
    </html>
  • 创建 LoginServlet

    创建一个LoginServlet
    因为浏览器中的form的method是post,所以LoginServlet需要提供一个doPost方法
    在doPost方法中,通过request.getParamter 根据name取出对应的账号和密码
    然后用System.out.println() 打印在控制台

    注 这里是打印在控制台,并没有在网页上输出
    import java.io.IOException;
     
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
      
    public class LoginServlet extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            String name = request.getParameter("name");
            String password = request.getParameter("password");
      
            System.out.println("name:" + name);
            System.out.println("password:" + password);
        }
    }
  • 映射LoginServlet到路径login

    在web.xml中新增映射
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app>
     
        <servlet>
            <servlet-name>HelloServlet</servlet-name>
            <servlet-class>HelloServlet</servlet-class>
        </servlet>
     
        <servlet-mapping>
            <servlet-name>HelloServlet</servlet-name>
            <url-pattern>/hello</url-pattern>
        </servlet-mapping>
         
        <servlet>
            <servlet-name>LoginServlet</servlet-name>
            <servlet-class>LoginServlet</servlet-class>
        </servlet>
     
        <servlet-mapping>
            <servlet-name>LoginServlet</servlet-name>
            <url-pattern>/login</url-pattern>
        </servlet-mapping>   
     
    </web-app>
  • 在页面提交数据

    首先重启tomcat
    然后访问页面 
    http://127.0.0.1/login.html
    输入账号密码,提交
    然后在tomcat的窗口,就可以看到提交的账号和密码了。

    注 不是在浏览器上看到这个提交的数据,浏览器上要看到tomcat的反馈数据,需要通过响应来实现



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值