1.首先在Eclipse当中创建一个项目叫做UsersManager,然后建立com.sgr.view包
2.在这个包当中建立一个servlet叫做LoginServlet,代码如下:
package com.sgr.view;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");//这种方式告诉浏览器默认编码方式就是utf-8
response.setCharacterEncoding("utf-8");
//返回一个界面(html界面)
PrintWriter out = response.getWriter();
out.println("<h1>用户登录</h1>");
//action应该这样写 /web应用名/Servlet的url
out.println("<form action='/UsersManager/LoginClServlet' method='get'>");
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>");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=utf-8");
}
}
注意一下:在这里我form表单的提交方式为get所以我在接受用户输入的servlet当中的doGet方法当中书写了代码,你也可以讲doGet以及doPost合二为一,这里我是分开的。
3.建立一个com.sgr.controller的包,在这个包当中创建一个servlet叫做LoginServlet。这个servlet起着控制器的作用,对于用户的输入去进行匹配,然后选择需要跳转的页面。这里使用的页面跳转方式是sendRedirct。具体代码如下:
package com.sgr.controller;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginClServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
//接受用户提交的用户名和密码
String username = request.getParameter("username");
String password = request.getParameter("password");
//这里先简单验证一下
if ("sgr".equals(username) && "123".equals(password)) {
//跳转到下一个页面【servlet提供了两种SendRedirct转向 forward转发】
//sendRedirct的url应该这样 /web应用名/servlet的url
response.sendRedirect("/UsersManager/MainFrame");
}else {
//跳回
response.sendRedirect("/UsersManager/LoginServlet");
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");
}
}
本文介绍了一个简单的用户登录系统的实现过程,包括使用Eclipse创建项目、编写LoginServlet来处理登录请求并展示登录界面,以及通过LoginClServlet进行用户验证和页面跳转。
1258

被折叠的 条评论
为什么被折叠?



