思路:
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>