当前位置:   article > 正文

使用jsp+servlet+mysql+tomcat实现登录网页设计_三)登录页面设计1.在tomcat安装目录中的webapps\test中,新建网页文件login.h

三)登录页面设计1.在tomcat安装目录中的webapps\test中,新建网页文件login.htm(参

文章申明:原文章为java jsp+servlet+mysql实现登录网页设计经阅读后重新编写了其中的代码

开发框架

IDE:Eclipse Java EE,Servers:Tomcat 8.0, DataBase:MySQL V5.7

涉及下面几个文件:

1、登录页面 login.jsp

2、成功跳转页面 success.jsp

3、失败跳转页面 fail.jsp

4、servlet 处理类 LoginTestServlet.java

5、配置文件 web.xml

-------------------------------------文章正文,请依次阅读------------------------------------------

LoginTestServlet.java内容

  1. package com.study;
  2. import java.io.IOException;
  3. import java.sql.DriverManager;
  4. import java.sql.ResultSet;
  5. import javax.servlet.ServletException;
  6. import javax.servlet.annotation.WebServlet;
  7. import javax.servlet.http.HttpServlet;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10. import javax.servlet.http.HttpSession;
  11. import com.mysql.jdbc.Connection;
  12. import com.mysql.jdbc.Statement;
  13. /**
  14. * Servlet implementation class LoginTestServlet
  15. * @Description java+mysql+tomcat实现登录
  16. * @author Ken
  17. * @date 2017-7-16 19:44:48
  18. */
  19. @WebServlet("/LoginTestServlet")
  20. public class LoginTestServlet extends HttpServlet {
  21. private static final long serialVersionUID = 1L;
  22. /**
  23. * @see HttpServlet#HttpServlet()
  24. */
  25. public LoginTestServlet() {
  26. super();
  27. }
  28. /**
  29. * @see HttpServlet#doGet(HttpServletRequest requset, HttpServletResponse response)
  30. */
  31. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  32. doPost(request, response);
  33. }
  34. /**
  35. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  36. */
  37. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  38. response.setContentType("text/html;charset=gb2312");
  39. request.setCharacterEncoding("gb2312");
  40. String result = "";
  41. String username = request.getParameter("username");
  42. String psw = request.getParameter("password");
  43. if(username == "" || username == null || username.length() > 20) {
  44. try {
  45. result = "请输入用户名(不能超过20个字符)";
  46. request.setAttribute("message", result);
  47. response.sendRedirect("login.jsp");
  48. return;
  49. } catch (Exception e) {
  50. e.printStackTrace();
  51. }
  52. }
  53. if(psw == "" || psw == null || psw.length() > 20 ) {
  54. try {
  55. result = "请输入密码(不能超过20个字符)";
  56. request.setAttribute("message", result);
  57. response.sendRedirect("login.jsp");
  58. return;
  59. } catch (Exception e) {
  60. e.printStackTrace();
  61. }
  62. }
  63. //登记JDBC驱动程序
  64. try {
  65. Class.forName("com.mysql.jdbc.Driver");
  66. } catch (Exception e) {
  67. System.out.print("Class Not Found Exception");
  68. }
  69. //链接URL
  70. String url = "jdbc:mysql://localhost:3306/study";
  71. Connection conn = null;
  72. Statement stmt = null;
  73. ResultSet rs = null;
  74. try {
  75. conn = (Connection) DriverManager.getConnection(url,"root", "root567~");
  76. stmt = (Statement) conn.createStatement();
  77. String sql = "select * from userInfo where username='"+username+"' and userpsw= '"+psw+"'";
  78. rs = stmt.executeQuery(sql);
  79. } catch (Exception e) {
  80. e.printStackTrace();
  81. }
  82. HttpSession session = request.getSession();
  83. session.setAttribute("username", username);
  84. try {
  85. if(rs.next()) {
  86. session.setAttribute("age", rs.getString("age"));
  87. session.setAttribute("sex", rs.getString("sex"));
  88. session.setAttribute("weight", rs.getString("weight"));
  89. response.sendRedirect("success.jsp");
  90. } else {
  91. session.setAttribute("message", "用户名或密码不匹配。");
  92. response.sendRedirect("fail.jsp");
  93. return;
  94. }
  95. } catch (Exception e) {
  96. e.printStackTrace();
  97. }
  98. }
  99. }


login.jsp内容

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>用户登录</title>
  8. </head>
  9. <body>
  10. <form action="LoginTestServlet" name="frmLogin" method="post">
  11. <h1 align="center">用户登录</h1>
  12. <center>
  13. <table border="1">
  14. <tr>
  15. <td>用户名:</td>
  16. <td>
  17. <input type="text" name="username" value="" size="20" maxlength="20"
  18. οnfοcus="if (this.value=='Your name') this.value='';" />
  19. </td>
  20. </tr>
  21. <tr>
  22. <td>密 码:</td>
  23. <td>
  24. <input type="password" name="password" value="" size="20" maxlength="20"
  25. οnfοcus="if (this.value=='Your Password') this.value='';" />
  26. </td>
  27. </tr>
  28. </table>
  29. <br />
  30. <input type="submit" name="submit" value="提交" οnclick="return validateLogin()">
  31. <input type="reset" name="Reset" value="重置" />
  32. </center>
  33. </form>
  34. <script type="text/javascript">
  35. function validateLogin(){
  36. var sUserName = document.frmLogin.username.value;
  37. var sPassWord = document.frmLogin.password.value;
  38. if(sUserName == ""){
  39. alert("请输入用户名!");
  40. return false;
  41. }
  42. if(sPassWord == "") {
  43. alert("请输入密码!");
  44. return false;
  45. }
  46. }
  47. </script>
  48. </body>
  49. </html>


success.jsp内容

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>登录成功</title>
  8. </head>
  9. <body>
  10. <%
  11. String username = (String)session.getAttribute("username");
  12. String age = (String)session.getAttribute("age");
  13. String weight = (String)session.getAttribute("weight");
  14. String sex = (String)session.getAttribute("sex");
  15. System.out.println("性别:A" + sex + "A");
  16. if (sex.trim().equals("M")) {
  17. sex = "男";
  18. }else{
  19. sex = "女";
  20. }
  21. %>
  22. <div align="center">
  23. <%=username %>
  24. <p>欢迎您,登录成功!</p><br />
  25. <font color="blue">登录用户信息:</font>
  26. <table border = 1>
  27. <tr>
  28. <td>姓名:</td>
  29. <td> <%=username %> </td>
  30. </tr>
  31. <tr>
  32. <td>年龄:</td>
  33. <td> <%=age %> </td>
  34. </tr>
  35. <tr>
  36. <td>体重:</td>
  37. <td> <%=weight %> </td>
  38. </tr>
  39. <tr>
  40. <td>性别:</td>
  41. <td> <%=sex %> </td>
  42. </tr>
  43. </table>
  44. <a href="login.jsp">返回</a>
  45. </div>
  46. </body>
  47. </html>

fail.jsp内容

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>登录失败</title>
  8. </head>
  9. <body>
  10. <%
  11. String username = (String)session.getAttribute("username");
  12. String msg = (String)session.getAttribute("message");
  13. %>
  14. <div align="center">
  15. <%=username %>
  16. <p>对不起,登录失败!</p><br />
  17. <font color="red">原因:</font>
  18. <%=msg %><br />
  19. <br />
  20. <p>5秒后将返回登录界面</p>
  21. </div>
  22. <%
  23. response.setHeader("Refresh", "5;URL=/Login/login.jsp");
  24. %>
  25. </body>
  26. </html>


web.xml内容

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  3. <display-name>Login</display-name>
  4. <welcome-file-list>
  5. <welcome-file>index.html</welcome-file>
  6. <welcome-file>index.htm</welcome-file>
  7. <welcome-file>index.jsp</welcome-file>
  8. <welcome-file>default.html</welcome-file>
  9. <welcome-file>default.htm</welcome-file>
  10. <welcome-file>default.jsp</welcome-file>
  11. </welcome-file-list>
  12. <!-- 添加servlet -->
  13. <servlet>
  14. <servlet-name>LoginTestServlet</servlet-name>
  15. <servlet-class>com.study.LoginTestServlet</servlet-class>
  16. </servlet>
  17. <servlet-mapping>
  18. <servlet-name>LoginTestServlet</servlet-name>
  19. <url-pattern>/loginTestServlet</url-pattern>
  20. </servlet-mapping>
  21. </web-app>


对应的数据库和表,Eclipse链接MySQL的方法请自行度娘下哈

  1. CREATE DATABASE study;
  2. CREATE TABLE userInfo (
  3. id INT NOT NULL PRIMARY KEY,
  4. username CHAR(20) NOT NULL,
  5. userpsw CHAR(20),
  6. age INT,
  7. weight INT,
  8. sex ENUM('M', 'F')
  9. );



附上运行后的效果






声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/453454
推荐阅读
相关标签
  

闽ICP备14008679号