登录功能 的业务逻辑图
相应Servlet的实现代码
(对代码的解释包含在了代码注释里面)
LoginServlet.java
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//该句代码用于设这浏览器的字符编码
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
response.setCharacterEncoding("utf-8");
//返回一个界面(html技术)
out.println("<h1>用户登录</h1><br/>");
//action应该这样写:/Web应用名/Sevlet的url
out.println("<form action='/UsersManager/LoginControllerServlet' method='post'><br/>");
out.println("用户名:<input type='text' name='username'/><br/>");
out.println("密 码:<input type='password' name='password'/><br/>");
out.println("<input type='submit' value='登录'/><br/>");
out.println("</form>");
}
LoginControllerServlet.java:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
//接收用户提交的用户名和密码,最好用粘贴
String username = request.getParameter("username");
String password = request.getParameter("password");
if("dengqi".equals(username) && "fight".equals(password))
{
//跳转到下一个页面(Servlet提供了两种跳转方式:SendRedirct:转向 + forward:转发)
//sendRedirect的URL格式:/web应用/Servlet的url
response.sendRedirect("/UsersManager/MainFrame");
}else{
//调回原页面 response.sendRedirect("/UsersManager/LoginServlet");
}
out.println(username + "登陆成功");
// System.out.println("username:" + username + "\n" + "password:" + password);;
}
MainFrame.java:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.println("<h1>主界面<h1>");
}