jsp第十一周作业
1.建库,建表2个
用户表(id,用户名,密码)
邮件表(id,发件人,收件人,标题,内容,发送时间,状态)
2.建model层
entity,dao包
3.登陆,注册,登陆后显示全部邮件
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 3 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 4 <html> 5 <head> 6 <title>登录</title> 7 </head> 8 <body> 9 <script type="text/javascript"> 10 function validate(){ 11 if(loginForm.uname.value == ""){ 12 alert("账号不能为空!"); 13 return; 14 } 15 if(loginForm.upwd.value == ""){ 16 alert("密码不能为空!"); 17 return; 18 } 19 loginForm.submit(); 20 } 21 </script> 22 <form action="dologin.jsp" name="loginForm" method="post"> 23 <table border="0" cellpadding="10"> 24 <tr><td>用户名:</td> 25 <td><input type="text" name="uname"></td> 26 </tr> 27 <tr><td>密码:</td> 28 <td><input type="password" name="upwd"></td> 29 </tr> 30 <tr> 31 <td><input type="button" value="登录" onclick="validate()"></td> 32 <td><input type="button" value="注册" onclick="location.href='register.jsp'"></td> 33 </tr> 34 </table> 35 </form> 36 </body> 37 </html> login
1 <%@page import="com.sk.dao.MsgDao"%> 2 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 3 <%@ page import="com.sk.dao.UsersDao" %> 4 <% 5 request.setCharacterEncoding("UTF-8"); 6 String uname = request.getParameter("uname"); 7 String upwd = request.getParameter("upwd"); 8 9 UsersDao ud = new UsersDao(); 10 if(ud.login(uname, upwd)){ 11 session.setAttribute("uname", uname); 12 request.getRequestDispatcher("main.jsp").forward(request, response); 13 }else{ 14 out.print("登录失败,即将跳回登录页......"); 15 response.setHeader("refresh", "5;url=login.jsp"); 16 } 17 %> 18 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 19 <html> 20 <head> 21 <title></title> 22 </head> 23 <body> 24 25 </body> 26 </html> dologin
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 3 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 4 <html> 5 <head> 6 <title>注册</title> 7 </head> 8 <body> 9 <script type="text/javascript"> 10 function validate(){ 11 if(regForm.uname.value == ""){ 12 alert("账号不能为空!"); 13 return; 14 } 15 if(regForm.upwd.value == ""){ 16 alert("密码不能为空!"); 17 return; 18 } 19 regForm.submit(); 20 } 21 </script> 22 <form action="doreg.jsp" name="regForm" method="post"> 23 <table> 24 <tr> 25 <td>用户名:</td> 26 <td><input type="text" name="uname"></td> 27 </tr> 28 <tr> 29 <td>密码:</td> 30 <td><input type="password" name="upwd"></td> 31 </tr> 32 </table> 33 <input type="button" value="提交" onclick="validate()"> 34 <input type="reset" value="重置"> 35 </form> 36 </body> 37 </html> register
1 <%@page import="com.sk.dao.UsersDao"%> 2 <%@page import="com.sk.entity.Users"%> 3 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 4 5 <% 6 request.setCharacterEncoding("UTF-8"); 7 response.setCharacterEncoding("UTF-8"); 8 String uname = request.getParameter("uname"); 9 String upwd = request.getParameter("upwd"); 10 Users u = new Users(); 11 u.setUname(uname); 12 u.setUpwd(upwd); 13 UsersDao ud = new UsersDao(); 14 int r = ud.reg(u); 15 if(r >= 1){ 16 request.getRequestDispatcher("login.jsp").forward(request, response); 17 }else{ 18 out.print("注册失败,即将跳回注册页......"); 19 response.setHeader("refresh", "3;url=register.jsp"); 20 } 21 %> 22 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 23 <html> 24 <head> 25 <title></title> 26 </head> 27 <body> 28 </body> 29 </html> doreg
1 <%@page import="com.sk.entity.Msg"%> 2 <%@page import="com.sk.dao.MsgDao"%> 3 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 4 5 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 6 <html> 7 <head> 8 <title>首页</title> 9 </head> 10 <body> 11 <h1>欢迎进入邮箱首页!</h1> 12 <a href="send.jsp">发送邮件</a> 13 <a href="del.jsp">删除邮件</a> 14 <a href="unread.jsp">查看未读邮件</a> 15 <h3>收件箱</h3> 16 <% 17 MsgDao md = new MsgDao(); 18 String uname = (String) session.getAttribute("uname"); 19 List<Msg> list = md.getMailByReceiver(uname); 20 %> 21 <table border="1"> 22 <tr> 23 <th>发件人</th> 24 <th>标题</th> 25 <th>状态</th> 26 <th>时间</th> 27 </tr> 28 <% 29 for (int i = 0; i < list.size(); i++) { 30 %> 31 <tr> 32 <td> 33 <% 34 out.print(list.get(i).getSendto() + "<br>"); 35 %> 36 </td> 37 <td> 38 <% 39 out.print(list.get(i).getTitle() + "<br>"); 40 %> 41 </td> 42 <td> 43 <% 44 out.print(list.get(i).getState() + "<br>"); 45 %> 46 </td> 47 <td> 48 <% 49 out.print(list.get(i).getMsg_create_date() + "<br>"); 50 %> 51 </td> 52 </tr> 53 <% 54 } 55 %> 56 </table> 57 </body> 58 </html> main
1 package com.sk.entity;
2
3 public class Users {
4 private int id;
5 private String uname;
6 private String upwd;
7
8
9 public Users() {
10 super();
11 }
12 public Users(String uname, String upwd) {
13 super();
14 this.uname = uname;
15 this.upwd = upwd;
16 }
17 public int getId() {
18 return id;
19 }
20 public void setId(int id) {
21 this.id = id;
22 }
23 public String getUname() {
24 return uname;
25 }
26 public void setUname(String uname) {
27 this.uname = uname;
28 }
29 public String getUpwd() {
30 return upwd;
31 }
32 public void setUpwd(String upwd) {
33 this.upwd = upwd;
34 }
35
36
37 }
Users
1 package com.sk.entity;
2
3 import java.util.Date;
4
5 public class Msg {
6 private int msgid;
7 private String username;
8 private String title;
9 private String msgcontent;
10 private int state;
11 private String sendto;
12 private Date msg_create_date;
13
14 public int getMsgid() {
15 return msgid;
16 }
17 public void setMsgid(int msgid) {
18 this.msgid = msgid;
19 }
20 public String getUsername() {
21 return username;
22 }
23 public void setUsername(String username) {
24 this.username = username;
25 }
26 public String getTitle() {
27 return title;
28 }
29 public void setTitle(String title) {
30 this.title = title;
31 }
32 public String getMsgcontent() {
33 return msgcontent;
34 }
35 public void setMsgcontent(String msgcontent) {
36 this.msgcontent = msgcontent;
37 }
38 public int getState() {
39 return state;
40 }
41 public void setState(int state) {
42 this.state = state;
43 }
44 public String getSendto() {
45 return sendto;
46 }
47 public void setSendto(String sendto) {
48 this.sendto = sendto;
49 }
50 public Date getMsg_create_date() {
51 return msg_create_date;
52 }
53 public void setMsg_create_date(Date msg_create_date) {
54 this.msg_create_date = msg_create_date;
55 }
56
57 }
Msg
1 package com.sk.dao;
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 BaseDao {
10 public Connection conn = null;
11 PreparedStatement ps = null;
12 ResultSet rs = null;
13
14 //获取连接
15 protected Connection getConnection(){
16
17 try {
18 //加载驱动
19 Class.forName("com.mysql.jdbc.Driver");
20 //建立连接
21 conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
22 } catch (Exception e) {
23 // TODO Auto-generated catch block
24 e.printStackTrace();
25 }
26 return conn;
27 }
28
29 //关闭连接
30 protected void closeAll(Connection con, PreparedStatement ps, ResultSet rs){
31 try{
32 if(rs != null)
33 rs.close();
34 if(ps != null)
35 ps.close();
36 if(con != null)
37 con.close();
38 }catch (SQLException e) {
39 e.printStackTrace();
40 }
41 }
42 }
BaseDao
1 package com.sk.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 com.sk.entity.Users;
9
10 public class UsersDao extends BaseDao {
11 //关于用户的增删改查
12
13 //登录
14 public boolean login(String uname,String upwd){
15 boolean f = false;
16 Connection conn = getConnection();
17 String sql = "select * from users where uname=? and upwd=?";
18 PreparedStatement ps;
19 try {
20 ps = conn.prepareStatement(sql);
21 ps.setString(1, uname);
22 ps.setString(2, upwd);
23 ResultSet rs = ps.executeQuery();
24 if(rs.next()) //查到结果
25 f = true;
26 closeAll(conn,ps,rs);
27 } catch (SQLException e) {
28 // TODO Auto-generated catch block
29 e.printStackTrace();
30 }
31 return f;
32 }
33 //注册
34 public int reg(Users u){
35 int i = 0;
36 Connection conn = getConnection();
37 PreparedStatement ps = null;
38 String sql = "insert into users(uname,upwd) values (?,?)";
39 try {
40 ps = conn.prepareStatement(sql);
41 ps.setString(1, u.getUname());
42 ps.setString(2, u.getUpwd());
43 i = ps.executeUpdate();
44 } catch (SQLException e) {
45 // TODO Auto-generated catch block
46 e.printStackTrace();
47 }finally{
48 closeAll(conn, ps, null);
49 }
50 return i;
51 }
52 }
UsersDao