返回 HTML 响应给浏览器
根据浏览器提交的账号密码返回登录成功或者失败。如果账号是 admin
\,密码是 admin
, 就返回登录成功,否则返回登录失败。
LoginServlet
判断账号密码是否正确,如果是就打印 “success” 否则就打印 “fail”,分别创建对应的 html 字符串,然后通过 response.getWriter().println()
发送给浏览器。
用户可能没有输入账号密码就提交,Servlet 会获取到 null。比较的时候把常量字符串 “admin” 放前面,这样就规避了空指针异常的问题。
这里输出的响应是 “success” 和 “fail”,不是中文。如果使用中文,浏览器有可能是乱码,需要设置为 UTF-8
编码。
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 {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
String html = null;
if ("admin".equals(username) && "admin".equals(password)) {
html = "<div style='color:green'>success</div>";
} else {
html = "<div style='color:red'>fail</div>";
}
PrintWriter pw = response.getWriter();
pw.println(html);
}
}
启动 Tomcat,提交数据
启动 Tomcat 服务器,访问页面 http://127.0.0.1/xxx/login.html
。
输入账号 “admin”,密码 “admin”,点击提交可以看到页面显示为 “success”。