JSP第十次作业
数据库test 中建个表 stu(stuid 主键 自动增长 ,用户名,密码,年龄)
1.设计一个注册页面,实现用户注册功能
2.设计一个登陆页面,实现用户名密码登陆
3.两个页面可以互相超链接
1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 2 3 <!DOCTYPE HTML> 4 <html> 5 <head> 6 <meta charset="utf-8"> 7 <title>My JSP 'index.jsp' starting page</title> 8 </head> 9 10 <body> 11 <form name="formName" action="dologin.jsp"> 12 用户名:<input type="text" name="uname"><br> 密码:<input 13 type="text" name="password"><br> 14 15 <input type="button" value="登录" onclick="toLogin()"> 16 <input type="button" value="注册" onclick="toReg()"> 17 </form> 18 <script type="text/javascript"> 19 function toReg() { 20 window.location.href = "reg.jsp"; 21 } 22 function toLogin() { 23 if(formName.uname.value==""||formName.password.value==""){ 24 alert("账号或密码不能为空!"); 25 return; 26 } 27 formName.submit(); 28 } 29 </script> 30 <br> 31 </body> 32 </html>
1 <%@page import="com.lwk.demo6.entity.User"%> 2 <%@page import="com.lwk.demo6.dao.UserDao"%> 3 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 4 5 <!DOCTYPE HTML> 6 <html> 7 <head> 8 <meta charset="utf-8"> 9 <title>My JSP 'index.jsp' starting page</title> 10 </head> 11 12 <body> 13 <% 14 String uname = request.getParameter("uname"); 15 String password = request.getParameter("password"); 16 UserDao userDao = new UserDao(); 17 User user = userDao.getUserByUname(uname); 18 if (password.equals(user.getPassword())) { 19 session.setAttribute("uname", uname); 20 request.getRequestDispatcher("main.jsp").forward( 21 request, response); 22 } else { 23 %> 24 <script type="text/javascript"> 25 alert("登录失败"); 26 </script> 27 <% 28 request.getRequestDispatcher("login.jsp").forward(request, 29 response); 30 } 31 %> 32 </body> 33 </html>
1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 2 3 <!DOCTYPE HTML> 4 <html> 5 <head> 6 <meta charset="utf-8"> 7 <title>My JSP 'index.jsp' starting page</title> 8 </head> 9 10 <body> 11 <form name="regForm" action="submit.jsp"> 12 用户名:<input type="text" name="uname"><br> 密码:<input 13 type="password" name="password"><br> 确认密码:<input 14 type="password"><br> 年龄:<input type="text" name="age"><br> 15 </form> 16 <button onclick="reg()">登录</button> 17 <script type="text/javascript"> 18 function reg() { 19 regForm.submit(); 20 } 21 </script> 22 <br> 23 </body> 24 </html>
1 <%@page import="com.lwk.demo6.dao.UserDao"%> 2 <%@page import="com.lwk.demo6.entity.User"%> 3 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 4 5 <!DOCTYPE HTML> 6 <html> 7 <head> 8 <meta charset="utf-8"> 9 <title>My JSP 'index.jsp' starting page</title> 10 </head> 11 12 <body> 13 <% 14 request.setCharacterEncoding("utf-8"); 15 response.setCharacterEncoding("utf-8"); 16 String uname = request.getParameter("uname"); 17 String password = request.getParameter("password"); 18 Integer age = Integer.parseInt(request.getParameter("age")); 19 User user = new User(uname, password, age); 20 UserDao userDao = new UserDao(); 21 userDao.regUser(user); 22 response.sendRedirect("login.jsp"); 23 %> 24 </body> 25 </html>
1 package com.lwk.demo6.entity; 2 3 public class User { 4 private Integer stuId; 5 private String uname; 6 private String password; 7 private Integer age; 8 9 public User() { 10 super(); 11 } 12 13 public User(String uname, String password, Integer age) { 14 super(); 15 this.uname = uname; 16 this.password = password; 17 this.age = age; 18 } 19 20 public Integer getStuId() { 21 return stuId; 22 } 23 24 public void setStuId(Integer stuId) { 25 this.stuId = stuId; 26 } 27 28 public String getUname() { 29 return uname; 30 } 31 32 public void setUname(String uname) { 33 this.uname = uname; 34 } 35 36 public String getPassword() { 37 return password; 38 } 39 40 public void setPassword(String password) { 41 this.password = password; 42 } 43 44 public Integer getAge() { 45 return age; 46 } 47 48 public void setAge(Integer age) { 49 this.age = age; 50 } 51 52 }
1 package com.lwk.demo6.util; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.SQLException; 6 7 public class DbUtil { 8 static { 9 try { 10 Class.forName("com.mysql.jdbc.Driver"); 11 } catch (ClassNotFoundException e) { 12 // TODO Auto-generated catch block 13 e.printStackTrace(); 14 } 15 } 16 17 public static Connection getCon() { 18 Connection con = null; 19 try { 20 con = DriverManager.getConnection( 21 "jdbc:mysql://localhost:3306/test", "root", "123456"); 22 } catch (SQLException e) { 23 // TODO Auto-generated catch block 24 e.printStackTrace(); 25 } 26 return con; 27 } 28 }
1 package com.lwk.demo6.dao; 2 3 import java.sql.Connection; 4 import java.sql.PreparedStatement; 5 import java.sql.ResultSet; 6 import java.sql.SQLException; 7 8 import javax.annotation.PreDestroy; 9 10 import com.lwk.demo6.entity.User; 11 import com.lwk.demo6.util.DbUtil; 12 13 public class UserDao { 14 public void regUser(User user) { 15 String sql = "insert into stu(uname,password,age) value(?,?,?)"; 16 Connection con = DbUtil.getCon(); 17 try { 18 PreparedStatement pred = con.prepareStatement(sql); 19 pred.setString(1, user.getUname()); 20 pred.setString(2, user.getPassword()); 21 pred.setInt(3, user.getAge()); 22 pred.executeUpdate(); 23 pred.close(); 24 } catch (SQLException e) { 25 // TODO Auto-generated catch block 26 e.printStackTrace(); 27 } finally { 28 try { 29 con.close(); 30 } catch (SQLException e) { 31 // TODO Auto-generated catch block 32 e.printStackTrace(); 33 } 34 } 35 36 } 37 38 public User getUserByUname(String uname) { 39 User user = new User(); 40 String sql = "select * from stu where uname = ?"; 41 Connection con = DbUtil.getCon(); 42 try { 43 PreparedStatement pred = con.prepareStatement(sql); 44 pred.setString(1, uname); 45 ResultSet res = pred.executeQuery(); 46 while (res.next()) { 47 user.setStuId(res.getInt("stuId")); 48 user.setUname(uname); 49 user.setPassword(res.getString("password")); 50 user.setAge(res.getInt("age")); 51 } 52 } catch (SQLException e) { 53 // TODO Auto-generated catch block 54 e.printStackTrace(); 55 } 56 return user; 57 } 58 }