问题:如何使用同一个Servlet实现注册,登录等多个功能
解决方案:使用参数进行传递后 实现功能前进行判断,上代码
登录页面代码
<form action="/BBS_Manage/UserServlet?opr=login" method="post" onsubmit="return check()">
<p id="error" style="color: red"></p>
<label> 登录名 </label>
<input type="text" id="name" name="name" value="" class="login_input"/>
<br/>
<label> 密码 </label>
<input type="password" id="pwd" name="pwd" value="" class="login_input"/>
<br/>
<label> 邮箱 </label>
<input type="text" id="email" name="email" value="" class="login_input"/>
<br/>
<button type="submit">提交</button>
<button type="button" onclick = "location.href = '/BBS_Manage/register.jsp'">注册</button>
</form>
注册页面代码
//设置参数表单传递
<form action="/BBS_Manage/UserServlet?opr=add" method="post" onsubmit="return check()">
<p id="error" style="color: red"></p>
<label> 登录名 </label>
<input type="text" id="name" name="name" value="" class="login_input"/>
<br/>
<label> 密  码 </label>
<input type="password" id="pwd" name="pwd" value="" class="login_input"/>
<br/>
<label> 邮  箱 </label>
<input type="text" id="email" name="email" value="" class="login_input"/>
<br/>
<button type="submit">提交</button>
<button type="button" onclick = "location.href = '/BBS_Manage/index.jsp'">返回登陆</button>
</form>
Servlet代码
String opr = request.getParameter("opr"); //***取参数***
//功能实现
if (opr.equals("login")) { // 登录
String userName = request.getParameter("name");
String userPwd = request.getParameter("pwd");
UserService userService = new UserServiceImpl();
if (userService.userLogin(userName,userPwd)!=null) {
request.getSession().setAttribute("loginUser",userName); //保存登录用户名
response.sendRedirect("welcome.jsp");
}else{
response.sendRedirect("index.jsp");
}
}else if(opr.equals("add")){ //注册
}
通过每个功能传输不同的参数,实现不同的功能。 从而实现一个Servlet实现多个功能