思路:

1.在web里面设置已经定义好的账号的密码的值。

2.在index.jsp当中用表单在界面输出文本框,获取用户输入

3.得到用户输入req.getParameter("code")   req.getParameter("password")

4.得到web里面已经设置好的值

config.getServletContext().getInitParameter("code")
config.getServletContext().getInitParameter("password")

5.两个比对,一定就进入欢迎界面,不一样就报错。

代码如下:

web.xml

<context-param>
    <param-name>code</param-name>
    <param-value>123</param-value>
</context-param>
<context-param>
    <param-name>password</param-name>
    <param-value>456</param-value>
</context-param>

index.jsp

<form action="/my">
  <h2>登录系统</h2>
  <hr>
  账号:<input type="text" name="code"/>
  <br/>
  密码:<input type="password" name="password"/>
  <input type="submit" value="登录">
</form>

MyServlet

 String webCode;
    String webPwd;
    @Override
    public void init(ServletConfig config) throws ServletException {
        webCode=config.getServletContext().getInitParameter("code");
        webPwd=config.getServletContext().getInitParameter("password");
        //System.out.println(webCode);
        //System.out.println(webPwd);
    }
    String path;
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //获得输入的值
        String code=req.getParameter("code");
        //System.out.println(code);
        String password=req.getParameter("password");
        //System.out.println(password);
        //获得web配置中的账号密码
        if(webCode.equals(code)&&webPwd.equals(password)){
            path="welcome.jsp";

        }else{
            path="error.jsp";
        }
        //跳转
        req.getRequestDispatcher(path).forward(req,resp);

welcome.jsp

<body>
    欢迎登陆系统
    登录成功
</body>

error.jsp

<body>
   <h2>账号或密码错误,请重试</h2>
</body>

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐