公文流转系统①|登录&注册
一、效果如下:
(1)登录
(2)注册
二、公文流转系统总工程目录
(1)src目录
(2)WebContent目录
(3)jsp目录
三、SQL语句
(1)login表
1 -- ---------------------------- 2 -- Table structure for `login` 3 -- ---------------------------- 4 DROP TABLE IF EXISTS `login`; 5 CREATE TABLE `login` ( 6 `id` int(11) NOT NULL AUTO_INCREMENT, 7 `name` varchar(255) DEFAULT NULL, 8 `password` varchar(255) DEFAULT NULL, 9 `department` varchar(255) DEFAULT NULL, 10 `status` varchar(255) DEFAULT NULL, 11 PRIMARY KEY (`id`) 12 ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8; 13 14 -- ---------------------------- 15 -- Records of login 16 -- ---------------------------- 17 INSERT INTO `login` VALUES ('1', 'admin', '1', '管理员', '1'); 18 INSERT INTO `login` VALUES ('2', 'cz', '1', '厂长', '1'); 19 INSERT INTO `login` VALUES ('3', 'bgs', '1', '办公室', '1'); 20 INSERT INTO `login` VALUES ('4', 'fzcx', '1', '副厂长-销售部', '1'); 21 INSERT INTO `login` VALUES ('5', 'fczc', '1', '副厂长-财务部', '1'); 22 INSERT INTO `login` VALUES ('6', 'fczs', '1', '副厂长-生产部', '1'); 23 INSERT INTO `login` VALUES ('7', 'xs', '1', '销售部', '1'); 24 INSERT INTO `login` VALUES ('8', 'cw', '1', '财务部', '1'); 25 INSERT INTO `login` VALUES ('9', 'scz', '1', '生产部主厂区', '1'); 26 INSERT INTO `login` VALUES ('10', 'scy', '1', '生产部一分厂', '1'); 27 INSERT INTO `login` VALUES ('11', 'sze', '1', '生产部二分厂', '1'); 28 INSERT INTO `login` VALUES ('12', 'scs', '1', '生产部三分厂', '1');
(2)user表
1 -- ---------------------------- 2 -- Table structure for `user` 3 -- ---------------------------- 4 DROP TABLE IF EXISTS `user`; 5 CREATE TABLE `user` ( 6 `id` int(11) NOT NULL AUTO_INCREMENT, 7 `name` varchar(255) DEFAULT NULL, 8 `password` varchar(255) DEFAULT NULL, 9 `department` varchar(255) DEFAULT NULL, 10 `sex` varchar(255) DEFAULT NULL, 11 `phone` varchar(255) DEFAULT NULL, 12 `email` varchar(255) DEFAULT NULL, 13 `address` varchar(255) DEFAULT NULL, 14 `status` varchar(255) DEFAULT NULL, 15 PRIMARY KEY (`id`) 16 ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8; 17 18 -- ---------------------------- 19 -- Records of user 20 -- ---------------------------- 21 INSERT INTO `user` VALUES ('1', 'cz', '1', '厂长', '男', '19829394729', '2915472819@qq.com', 'China', '1'); 22 INSERT INTO `user` VALUES ('2', 'bgs', '1', '办公室', '女', '19823454729', '2915472319@qq.com', 'China', '1'); 23 INSERT INTO `user` VALUES ('3', 'fzcx', '1', '副厂长-销售部', '女', '19823454729', '2915472819@qq.com', 'China', '1'); 24 INSERT INTO `user` VALUES ('4', 'fczc', '1', '副厂长-财务部', '男', '19823454729', '2915472319@qq.com', 'zhongguo', '1'); 25 INSERT INTO `user` VALUES ('5', 'fczs', '1', '副厂长-生产部', '女', '19829394729', '2915472819@qq.com', 'zhongguo', '1'); 26 INSERT INTO `user` VALUES ('6', 'xs', '1', '销售部', '女', '19823454729', '2915472819@qq.com', 'zhongguo', '1'); 27 INSERT INTO `user` VALUES ('7', 'cw', '1', '财务部', '男', '12345646853', '1235472319@qq.com', '中国河北', '1'); 28 INSERT INTO `user` VALUES ('8', 'scz', '1', '生产部主厂区', '女', '19823454729', '2915472319@qq.com', '中国河北', '1'); 29 INSERT INTO `user` VALUES ('9', 'scy', '1', '生产部一分厂', '男', '19823454729', '2915472319@qq.com', 'zhongguo', '1'); 30 INSERT INTO `user` VALUES ('10', 'sze', '1', '生产部二分厂', '男', '19823454729', '2915472319@qq.com', 'zhongguo', '1'); 31 INSERT INTO `user` VALUES ('11', 'scs', '1', '生产部三分厂', '男', '12345646853', '1235472319@qq.com', 'China', '1');
四、代码如下:
(1)index.jsp
1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="utf-8"%> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <meta charset="utf-8"> 7 <title>登录界面</title> 8 <script src=".//layui/layui.js"></script> 9 <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> 10 <meta name="renderer" content="webkit"> 11 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 12 <meta name="viewport" 13 content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> 14 <link rel="stylesheet" href=".//layui/css/layui.css" media="all"> 15 <link rel="stylesheet" href=".//style/admin.css" media="all"> 16 <link rel="stylesheet" href=".//style/login.css" media="all"> 17 </head> 18 <body> 19 <form action="LoginServlet" method="post"> 20 <div class="layadmin-user-login layadmin-user-display-show" 21 id="LAY-user-login" style="display: none;"> 22 23 <div class="layadmin-user-login-main"> 24 <div class="layadmin-user-login-box layadmin-user-login-header"> 25 <h2>公文流转系统</h2> 26 </div> 27 <div 28 class="layadmin-user-login-box layadmin-user-login-body layui-form"> 29 <div class="layui-form-item"> 30 <label 31 class="layadmin-user-login-icon layui-icon layui-icon-username" 32 for="LAY-user-login-username"></label> <input type="text" 33 name="username" id="username" lay-verify="required" 34 placeholder="用户名" class="layui-input"> 35 </div> 36 <div class="layui-form-item"> 37 <label 38 class="layadmin-user-login-icon layui-icon layui-icon-password" 39 for="LAY-user-login-password"></label> <input type="password" 40 name="password" id="password" lay-verify="required" 41 placeholder="密码" class="layui-input"> 42 </div> 43 <div class="layui-form-item"> 44 <label class="layui-form-label">部门</label> 45 <div class="layui-input-inline"> 46 <select id="department" name="department"> 47 <option value="">请选择</option> 48 <option value="管理员">管理员</option> 49 <option value="厂长">厂长</option> 50 <option value="副厂长-销售部">副厂长-销售部</option> 51 <option value="副厂长-财务部">副厂长-财务部</option> 52 <option value="副厂长-生产部">副厂长-生产部</option> 53 <option value="办公室">办公室</option> 54 <option value="销售部">销售部</option> 55 <option value="财务部">财务部</option> 56 <option value="生产部主厂区">生产部主厂区</option> 57 <option value="生产部一分厂">生产部一分厂</option> 58 <option value="生产部二分厂">生产部二分厂</option> 59 <option value="生产部三分厂">生产部三分厂</option> 60 </select> 61 </div> 62 </div> 63 <div class="layui-form-item" style="margin-bottom: 20px;"> 64 <input type="checkbox" name="remember" lay-skin="primary" 65 title="记住密码"> <a href="#" 66 class="layadmin-user-jump-change layadmin-link" 67 style="margin-top: 7px;">忘记密码?</a> 68 </div> 69 <div class="layui-form-item"> 70 <input class="layui-btn layui-btn-fluid" type="submit" value="登录"> 71 </div> 72 <div class="layui-trans layui-form-item layadmin-user-login-other"> 73 <a href="Zhuce.jsp" 74 class="layadmin-user-jump-change layadmin-link">注册帐号</a> 75 </div> 76 </div> 77 </div> 78 </div> 79 </form> 80 <script> 81 layui.use('form', function() { 82 var form = layui.form; 83 form.render(); 84 }); 85 </script> 86 </body> 87 </html>
(2)Zhuce.jsp
1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="utf-8"%> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <meta charset="utf-8"> 7 <title>注册界面</title> 8 <script src=".//layui/layui.js"></script> 9 <meta name="renderer" content="webkit"> 10 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 11 <meta name="viewport" 12 content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> 13 <link rel="stylesheet" href=".//layui/css/layui.css" media="all"> 14 <link rel="stylesheet" href=".//style/admin.css" media="all"> 15 <link rel="stylesheet" href=".//style/login.css" media="all"> 16 </head> 17 <body> 18 <form action="ZhuceServlet" method="post"> 19 <div class="layadmin-user-login layadmin-user-display-show" 20 id="LAY-user-login" style="display: none;"> 21 <div class="layadmin-user-login-main"> 22 <div class="layadmin-user-login-box layadmin-user-login-header"> 23 <h2>新用户注册界面</h2> 24 </div> 25 <div 26 class="layadmin-user-login-box layadmin-user-login-body layui-form"> 27 <div class="layui-form-item"> 28 <label class="layadmin-user-login-icon layui-icon layui-icon-username" 29 for="LAY-user-login-name"></label> <input type="text" name="name" 30 id="LAY-user-login-nickname" lay-verify="name" placeholder="用户名" 31 class="layui-input"> 32 </div> 33 <div class="layui-form-item"> 34 <label 35 class="layadmin-user-login-icon layui-icon layui-icon-password" 36 for="LAY-user-login-password"></label> <input type="password" 37 name="password" id="LAY-user-login-password" 38 lay-verify="password" placeholder="密码" class="layui-input"> 39 </div> 40 <div class="layui-form-item"> 41 <label 42 class="layadmin-user-login-icon layui-icon layui-icon-password" 43 for="LAY-user-login-repass"></label> <input type="password" 44 name="repass" id="LAY-user-login-repass" lay-verify="required" 45 placeholder="确认密码" class="layui-input"> 46 </div> 47 <div class="layui-input-item"> 48 <lable class="layui-form-label">性别</lable> 49 <input type="radio" name="sex" value="男" title="男" checked=""> 50 <input type="radio" name="sex" value="女" title="女"> 51 </div> 52 <div class="layui-form-item"> 53 <label class="layui-form-label">部门</label> 54 <div class="layui-input-inline"> 55 <select id="department" name="department"> 56 <option value="">请选择</option> 57 <option value="管理员">管理员</option> 58 <option value="厂长">厂长</option> 59 <option value="副厂长-销售部">副厂长-销售部</option> 60 <option value="副厂长-财务部">副厂长-财务部</option> 61 <option value="副厂长-生产部">副厂长-生产部</option> 62 <option value="办公室">办公室</option> 63 <option value="销售部">销售部</option> 64 <option value="财务部">财务部</option> 65 <option value="生产部主厂区">生产部主厂区</option> 66 <option value="生产部一分厂">生产部一分厂</option> 67 <option value="生产部二分厂">生产部二分厂</option> 68 <option value="生产部三分厂">生产部三分厂</option> 69 </select> 70 </div> 71 </div> 72 <div class="layui-form-item"> 73 <label 74 class="layadmin-user-login-icon layui-icon layui-icon-cellphone" 75 for="LAY-user-login-phone"></label> <input type="text" 76 name="phone" id="LAY-user-login-phone" lay-verify="phone" 77 placeholder="电话号码" class="layui-input"> 78 </div> 79 <div class="layui-form-item"> 80 <label 81 class="layadmin-user-login-icon layui-icon layui-icon-email" 82 for="LAY-user-login-email"></label> <input type="text" 83 name="email" id="LAY-user-login-email" lay-verify="email" 84 placeholder="电子邮箱" class="layui-input"> 85 </div> 86 <div class="layui-form-item"> 87 <label 88 class="layadmin-user-login-icon layui-icon layui-icon-location" 89 for="LAY-user-login-address"></label> <input type="text" 90 name="address" id="LAY-user-login-address" lay-verify="address" 91 placeholder="家庭住址" class="layui-input"> 92 </div> 93 <div class="layui-form-item"> 94 <input type="checkbox" name="agreement" lay-skin="primary" 95 title="同意用户协议" checked> 96 </div> 97 <div class="layui-form-item"> 98 <button class="layui-btn layui-btn-fluid" lay-submit 99 lay-filter="LAY-user-reg-submit">注 册</button> 100 </div> 101 <div class="layui-trans layui-form-item layadmin-user-login-other"> 102 <a href="index.jsp" 103 class="layadmin-user-jump-change layadmin-link layui-hide-xs">用已有帐号登入</a> 104 <a href="index.jsp" 105 class="layadmin-user-jump-change layadmin-link layui-hide-sm layui-show-xs-inline-block">登入</a> 106 </div> 107 </div> 108 </div> 109 </div> 110 </form> 111 </body> 112 </html>
(3)TestFail.jsp
1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="utf-8"%> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <meta charset="utf-8"> 7 <title>Test</title> 8 </head> 9 <body> 10 Fail 11 </body> 12 </html>
(4)TestSuccessful.jsp
1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="utf-8"%> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <meta charset="utf-8"> 7 <title>Test</title> 8 </head> 9 <body> 10 Successful 11 </body> 12 </html>
(5)Database.java
1 package database; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.PreparedStatement; 6 import java.sql.ResultSet; 7 import java.sql.SQLException; 8 9 public class Database { 10 public static final String url="jdbc:mysql://localhost:3306/documentsystem";//URL 11 public static final String user="root";//用户名 12 public static final String password="123";//密码 13 14 public static void main(String[] args) { 15 getConnection(); 16 } 17 18 /** 19 * 连接数据库 20 * @return 21 */ 22 public static Connection getConnection(){ 23 Connection conn=null; 24 try { 25 Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动 26 conn=DriverManager.getConnection(url, user, password); 27 System.out.println("数据库连接成功!"); 28 }catch(Exception e) { 29 e.printStackTrace(); 30 } 31 return conn; 32 } 33 34 /** 35 * 关闭数据库 36 */ 37 public static void close(Connection conn,PreparedStatement pstm) { 38 39 System.out.println("关闭SQL(conn,pstm)"); 40 if(pstm!=null) { 41 try { 42 pstm.close(); 43 }catch(SQLException e) { 44 e.printStackTrace(); 45 } 46 } 47 48 if(conn!=null) { 49 try { 50 conn.close(); 51 }catch(SQLException e) { 52 e.printStackTrace(); 53 } 54 } 55 56 } 57 58 public static void close(Connection conn,PreparedStatement pstm,ResultSet rs) { 59 60 System.out.println("关闭SQL(conn,pstm,rs)"); 61 if(pstm!=null) { 62 try { 63 pstm.close(); 64 }catch(SQLException e) { 65 e.printStackTrace(); 66 } 67 } 68 69 if(conn!=null) { 70 try { 71 conn.close(); 72 }catch(SQLException e) { 73 e.printStackTrace(); 74 } 75 } 76 77 if(rs!=null) { 78 try { 79 rs.close(); 80 }catch(SQLException e) { 81 e.printStackTrace(); 82 } 83 } 84 85 } 86 87 }
(6)Login.java
1 package util; 2 3 public class Login { 4 private String name; 5 private String password; 6 private String department; 7 private String status; 8 9 public String getName() { 10 return name; 11 } 12 public void setName(String name) { 13 this.name = name; 14 } 15 public String getPassword() { 16 return password; 17 } 18 public void setPassword(String password) { 19 this.password = password; 20 } 21 public String getDepartment() { 22 return department; 23 } 24 public void setDepartment(String department) { 25 this.department = department; 26 } 27 public String getStatus() { 28 return status; 29 } 30 public void setStatus(String status) { 31 this.status = status; 32 } 33 34 public Login() {} 35 public Login(String name,String password,String department,String status) { 36 super(); 37 this.name=name; 38 this.password=password; 39 this.department=department; 40 this.status=status; 41 } 42 }
(7)LoginServlet.java
1 package servlet; 2 3 import java.io.IOException; 4 import javax.servlet.ServletException; 5 import javax.servlet.annotation.WebServlet; 6 import javax.servlet.http.HttpServlet; 7 import javax.servlet.http.HttpServletRequest; 8 import javax.servlet.http.HttpServletResponse; 9 import javax.servlet.http.HttpSession; 10 11 import dao.LoginDao; 12 import util.Login; 13 14 /** 15 * Servlet implementation class LoginServlet 16 */ 17 @WebServlet("/LoginServlet") 18 public class LoginServlet extends HttpServlet { 19 private static final long serialVersionUID = 1L; 20 21 /** 22 * @see HttpServlet#HttpServlet() 23 */ 24 public LoginServlet() { 25 super(); 26 // TODO Auto-generated constructor stub 27 } 28 29 LoginDao loginDao = new LoginDao(); 30 31 /** 32 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse 33 * response) 34 */ 35 protected void doGet(HttpServletRequest request, HttpServletResponse response) 36 throws ServletException, IOException { 37 // TODO Auto-generated method stub 38 // response.getWriter().append("Served at: ").append(request.getContextPath()); 39 doPost(request, response); 40 } 41 42 /** 43 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse 44 * response) 45 */ 46 protected void doPost(HttpServletRequest request, HttpServletResponse response) 47 throws ServletException, IOException { 48 // TODO Auto-generated method stub 49 // doGet(request, response); 50 51 request.setCharacterEncoding("utf-8"); 52 response.setCharacterEncoding("utf-8"); 53 54 System.out.println("进入LoginServlet"); 55 String username = request.getParameter("username"); 56 String password = request.getParameter("password"); 57 String department = request.getParameter("department"); 58 59 // 使用request对象的getSession()获取session,如果session不存在则创建一个 60 HttpSession session = request.getSession(); 61 // 将数据存储到session中 62 session.setAttribute("username", username); 63 session.setAttribute("department", department); 64 // 将数据取出 65 String name = (String) session.getAttribute("username"); 66 // 输出数据 67 System.out.println("session name;" + name); 68 69 if (department.equals("管理员")) { 70 if (loginDao.login(username, password, department, "1")) { 71 System.out.println("验证成功"); 72 request.getRequestDispatcher("Admin.jsp").forward(request, response); 73 } else { 74 System.out.println("验证失败,请重新登录!"); 75 request.getRequestDispatcher("index.jsp").forward(request, response); 76 } 77 } else if (department.equals("厂长")) { 78 if (loginDao.login(username, password, department, "1")) { 79 System.out.println("验证成功"); 80 request.getRequestDispatcher("Factory.jsp").forward(request, response); 81 } else { 82 System.out.println("验证失败,请重新登录!"); 83 request.getRequestDispatcher("index.jsp").forward(request, response); 84 } 85 } else if (department.equals("副厂长-销售部")||department.equals("副厂长-财务部")||department.equals("副厂长-生产部")) { 86 if (loginDao.login(username, password, department, "1")) { 87 System.out.println("验证成功"); 88 request.getRequestDispatcher("viceFactory.jsp").forward(request, response); 89 } else { 90 System.out.println("验证失败,请重新登录!"); 91 request.getRequestDispatcher("index.jsp").forward(request, response); 92 } 93 } else if (department.equals("办公室")) { 94 if (loginDao.login(username, password, department, "1")) { 95 System.out.println("验证成功"); 96 request.getRequestDispatcher("Office.jsp").forward(request, response); 97 } else { 98 System.out.println("验证失败,请重新登录!"); 99 request.getRequestDispatcher("index.jsp").forward(request, response); 100 } 101 } else if (department.equals("销售部") || department.equals("财务部") || department.equals("生产部主厂区") 102 || department.equals("生产部一分厂") || department.equals("生产部二分厂") || department.equals("生产部三分厂")) { 103 if (loginDao.login(username, password, department, "1")) { 104 System.out.println("验证成功"); 105 request.getRequestDispatcher("department.jsp").forward(request, response); 106 } else { 107 System.out.println("验证失败,请重新登录!"); 108 request.getRequestDispatcher("index.jsp").forward(request, response); 109 } 110 } else { 111 System.out.println("Error!"); 112 request.getRequestDispatcher("index.jsp").forward(request, response); 113 } 114 } 115 }
(8)LoginDao.java
1 package dao; 2 3 import java.sql.Connection; 4 import java.sql.PreparedStatement; 5 import java.sql.ResultSet; 6 7 import database.Database; 8 import util.Login; 9 10 public class LoginDao { 11 public boolean login(String name,String password,String department,String status) { 12 Connection conn=null; 13 PreparedStatement pstm=null; 14 ResultSet rs=null; 15 try { 16 conn=Database.getConnection(); 17 String sql="select * from login where name=? and password=? and department=? and status=?"; 18 System.out.println(sql); 19 pstm=conn.prepareStatement(sql); 20 pstm.setString(1, name); 21 pstm.setString(2, password); 22 pstm.setString(3, department); 23 pstm.setString(4, status); 24 rs=pstm.executeQuery(); 25 Login login=new Login(); 26 while(rs.next()) { 27 login.setName(rs.getString("name")); 28 login.setPassword(rs.getString("password")); 29 login.setDepartment(rs.getString("department")); 30 login.setStatus(rs.getString("status")); 31 return true; 32 } 33 }catch(Exception e) { 34 e.printStackTrace(); 35 }finally { 36 //SQL执行完成后释放相关资源 37 Database.close(conn,pstm,rs); 38 } 39 return false; 40 } 41 }
(9)User.java
1 package util; 2 3 public class User { 4 private String name; 5 private String password; 6 private String department; 7 private String sex; 8 private String phone; 9 private String email; 10 private String address; 11 private String status; 12 public User() { 13 super(); 14 } 15 public User(String name,String password,String department,String sex,String phone,String email,String address,String status) { 16 super(); 17 this.name=name; 18 this.password=password; 19 this.sex=sex; 20 this.department=department; 21 this.phone=phone; 22 this.email=email; 23 this.address=address; 24 this.status=status; 25 } 26 public String getName() { 27 return name; 28 } 29 public void setName(String name) { 30 this.name = name; 31 } 32 public String getPassword() { 33 return password; 34 } 35 public void setPassword(String password) { 36 this.password = password; 37 } 38 public String getDepartment() { 39 return department; 40 } 41 public void setDepartment(String department) { 42 this.department = department; 43 } 44 public String getSex() { 45 return sex; 46 } 47 public void setSex(String sex) { 48 this.sex = sex; 49 } 50 public String getEmail() { 51 return email; 52 } 53 public void setEmail(String email) { 54 this.email = email; 55 } 56 public String getPhone() { 57 return phone; 58 } 59 public void setPhone(String phone) { 60 this.phone = phone; 61 } 62 public String getAddress() { 63 return address; 64 } 65 public void setAddress(String address) { 66 this.address = address; 67 } 68 public String getStatus() { 69 return status; 70 } 71 public void setStatus(String status) { 72 this.status = status; 73 } 74 75 }
(10)ZhuceServlet.java
1 package servlet; 2 3 import java.io.IOException; 4 import javax.servlet.ServletException; 5 import javax.servlet.annotation.WebServlet; 6 import javax.servlet.http.HttpServlet; 7 import javax.servlet.http.HttpServletRequest; 8 import javax.servlet.http.HttpServletResponse; 9 import javax.servlet.http.HttpSession; 10 11 import dao.ZhuceDao; 12 import util.User; 13 14 /** 15 * Servlet implementation class ZhuceServlet 16 */ 17 @WebServlet("/ZhuceServlet") 18 public class ZhuceServlet extends HttpServlet { 19 private static final long serialVersionUID = 1L; 20 21 /** 22 * @see HttpServlet#HttpServlet() 23 */ 24 public ZhuceServlet() { 25 super(); 26 // TODO Auto-generated constructor stub 27 } 28 29 ZhuceDao dao = new ZhuceDao(); 30 31 /** 32 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse 33 * response) 34 */ 35 protected void doGet(HttpServletRequest request, HttpServletResponse response) 36 throws ServletException, IOException { 37 // TODO Auto-generated method stub 38 // response.getWriter().append("Served at: ").append(request.getContextPath()); 39 doPost(request, response); 40 } 41 42 /** 43 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse 44 * response) 45 */ 46 protected void doPost(HttpServletRequest request, HttpServletResponse response) 47 throws ServletException, IOException { 48 // TODO Auto-generated method stub 49 // doGet(request, response); 50 51 request.setCharacterEncoding("utf-8"); 52 response.setCharacterEncoding("utf-8"); 53 54 System.out.println("进入ZhuceServlet"); 55 String name = request.getParameter("name"); 56 String password = request.getParameter("password"); 57 String department = request.getParameter("department"); 58 String sex = request.getParameter("sex"); 59 String phone = request.getParameter("phone"); 60 String email = request.getParameter("email"); 61 String address = request.getParameter("address"); 62 63 User user = new User(name, password, department, sex, phone, email, address, "1"); 64 65 if (dao.Zhuce(user)) { 66 request.getRequestDispatcher("index.jsp").forward(request, response); 67 } else { 68 request.getRequestDispatcher("Zhuce.jsp").forward(request, response); 69 } 70 71 } 72 73 }
(11)ZhuceDao.java
1 package dao; 2 3 import java.sql.Connection; 4 import java.sql.PreparedStatement; 5 6 import database.Database; 7 import util.User; 8 9 public class ZhuceDao { 10 public boolean Zhuce(User user) { 11 Connection conn=null; 12 PreparedStatement pstm=null; 13 PreparedStatement ps=null; 14 boolean judge=false; 15 try { 16 conn=Database.getConnection(); 17 String sql="insert into user(name,password,department,sex,phone,email,address,status) values(?,?,?,?,?,?,?,?)"; 18 String loginsql="insert into login(name,password,department,status) values(?,?,?,?)"; 19 System.out.println(sql); 20 System.out.println(loginsql); 21 pstm=conn.prepareStatement(sql); 22 ps=conn.prepareStatement(loginsql); 23 24 pstm.setString(1, user.getName()); 25 pstm.setString(2, user.getPassword()); 26 pstm.setString(3, user.getDepartment()); 27 pstm.setString(4, user.getSex()); 28 pstm.setString(5, user.getPhone()); 29 pstm.setString(6, user.getEmail()); 30 pstm.setString(7, user.getAddress()); 31 pstm.setString(8, user.getStatus()); 32 33 ps.setString(1, user.getName()); 34 ps.setString(2, user.getPassword()); 35 ps.setString(3, user.getDepartment()); 36 ps.setString(4, user.getStatus()); 37 38 //执行插入操作 39 int num=pstm.executeUpdate(); 40 int num1=ps.executeUpdate(); 41 if(num>0&&num1>0) { 42 System.out.println("注册成功"); 43 judge=true; 44 }else { 45 System.out.println("注册失败"); 46 judge=false; 47 } 48 }catch(Exception e) { 49 e.printStackTrace(); 50 }finally { 51 //SQL执行完成后释放相关资源 52 Database.close(conn,pstm); 53 } 54 return judge; 55 } 56 }