JSP第十一周作业(JSP Week 11 homework)

package com.lwb.dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class BaseDao {
    public Connection getConnection() {
        Connection con = null;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            con=DriverManager.getConnection("jdbc:mysql://localhost:3306/emailusers","root","123456");
        } catch (Exception e) {
            e.printStackTrace();
        }
        return con;
    }
    protected void closeAll(Connection con,PreparedStatement ps,ResultSet rs){
        try {
            if(rs != null)
                rs.close();
            if(ps != null)
                ps.close();
            if(con != null)
                con.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}
package com.lwb.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import test.Email;

import java.util.ArrayList;
import java.util.List;

public class EmailDao extends BaseDao{
    public List<Email> getAll(String uname){
        List<Email>list=new ArrayList<Email>();
        Connection con=getConnection();
        PreparedStatement pred=null;
        ResultSet resultSet=null;
        String sql="select * from email where sjr=?";
        try {
            pred=con.prepareStatement(sql);
            pred.setString(1, uname);
            resultSet=pred.executeQuery();
            while(resultSet.next()){
                Email email=new Email();
                email.setId(resultSet.getInt(1));
                email.setFjr(resultSet.getString(2));
                email.setSjr(resultSet.getString(3));
                email.setTitle(resultSet.getString(4));
                email.setContent(resultSet.getString(5));
                email.setTime(resultSet.getDate(6));
                email.setZt(resultSet.getInt(7));
                list.add(email);
            }
        } catch (SQLException e) {

            e.printStackTrace();
        }
        return list;
    }
}
package com.lwb.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class UserDao extends BaseDao{
    public int Register(String uname,String password){
        int i=-1;
        PreparedStatement pred=null;
        Connection con=getConnection();
        String sql="insert into users(uname,password)values(?,?)";
        try {
            pred= con.prepareStatement(sql);
            pred.setString(1, uname);
            pred.setString(2, password);
            i=pred.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }finally{
            closeAll(con, pred, null);
        }
        return i;
    }
    public boolean Login(String uname,String password){
        boolean f=false;
        PreparedStatement pred=null;
        ResultSet resultSet=null;
        Connection con=getConnection();
        String sql="select * from users where uname=? and password=?";
        try {
            pred=con.prepareStatement(sql);
            pred.setString(1, uname);
            pred.setString(2, password);
            resultSet=pred.executeQuery();
            while(resultSet.next()){
                f=true;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return f;
    }
}
package test;

import java.util.Date;

public class Email {
    private Integer id;
    private String fjr;
    private String sjr;
    private String title;
    private Date time;
    private Integer zt;
    private String content;
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getFjr() {
        return fjr;
    }
    public void setFjr(String fjr) {
        this.fjr = fjr;
    }
    public String getSjr() {
        return sjr;
    }
    public void setSjr(String sjr) {
        this.sjr = sjr;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public Date getTime() {
        return time;
    }
    public void setTime(Date time) {
        this.time = time;
    }
    public Integer getZt() {
        return zt;
    }
    public void setZt(Integer zt) {
        this.zt = zt;
    }
    public Email() {
        super();
    }
    public Email(Integer id, String fjr, String sjr, String title, Date time,
                 Integer zt, String content) {
        super();
        this.id = id;
        this.fjr = fjr;
        this.sjr = sjr;
        this.title = title;
        this.time = time;
        this.zt = zt;
        this.content = content;
    }
}
package test;

public class User {
    private Integer id;
    private String uname;
    private String password;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getUname() {
        return uname;
    }
    public void setUname(String uname) {
        this.uname = uname;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public User() {
        super();
    }
    public User(Integer id, String uname, String password) {
        super();
        this.id = id;
        this.uname = uname;
        this.password = password;
    }
}
<%@page import="test.Email"%>
<%@page import="com.lwb.dao.EmailDao"%>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
  String path = request.getContextPath();
  String basePath = request.getScheme() + "://"
          + request.getServerName() + ":" + request.getServerPort()
          + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
  <base href="<%=basePath%>">
  <title></title>
</head>
<body>
<%
  String uname = (String) session.getAttribute("uname");
  EmailDao dao = new EmailDao();
  List<Email> list = dao.getAll(uname);
%>
欢迎<%=uname%>
<br>
<br>
<table border="1px" cellspacing="0" cellpadding="30px">
  <thead></thead>
  <tr>
    <th>发件人</th>
    <th>标题</th>
    <th>时间</th>
    <th>状态</th>
  </tr>
  <tbody></tbody>
  <%
    for (int i = 0; i < list.size(); i++) {
  %>
  <tr>
    <td><%out.print(list.get(i).getFjr().toString()); %></td>
    <td><%out.print(list.get(i).getTitle().toString()); %></td>
    <td><%out.print(list.get(i).getTime().toString()); %></td>
    <td><%if(list.get(i).getZt()==0){
      out.print("<img src='img/w.png'></img>");
    }else{
      out.print("<img src='img/y.png'></img>");
    }%></td>
  </tr>
  <%
    }
  %>

</table>



</body>
</html>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title></title>
</head>
<body>
<%
    String uname = request.getParameter("uname");
    String password = request.getParameter("password");
    UserDao ud = new UserDao();
    if(ud.Login(uname, password)){
        session.setAttribute("uname", uname);
        request.getRequestDispatcher("main.jsp").forward(request, response);
    }else{
        out.print("登录失败,即将跳回登录页.....");
        response.setHeader("refresh", "2;url=Login.jsp");
    }
%>
</body>
</html>
<%--
  Created by IntelliJ IDEA.
  User: Liu
  Date: 2022/5/15
  Time: 0:00
  To change this template use File | Settings | File Templates.
--%>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title></title>
</head>
<body>
<h1>登录</h1>
<script>
    function yz() {
        if (form.uname.value == null) {
            alert('用户名不能为空');
            return;
        }
        if (form.password.value == null) {
            alert('密码不能为空');
            return;
        }
        if (form.uname.value != null && form.password.value != null) {
            form.submit();
        }
    }
</script>
<form action="dologin.jsp" method="post" name="form">
    <table>
        <tr>
            <td>用户名</td>
            <td><input type="text" name="uname"></td>
        </tr>
        <tr>
            <td>密码</td>
            <td><input type="password" name="password"></td>
        </tr>
        <tr>
            <td><input type="button" value="登录" onclick="yz()"></td>
            <td><a href="zhuce.jsp">注册</a></td>
        </tr>
    </table>
</form>
</body>
</html>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title></title>
</head>
<body>
<%
    String uname = request.getParameter("uname");
    String password = request.getParameter("password");
    UserDao ud = new UserDao();
    int i=ud.Register(uname, password);
    if(i>0){
        out.print("注册成功,即将跳到登录页.....");
        response.setHeader("refresh", "2;url=login.jsp");
    }else{
        out.print("注册失败,即将跳回注册页.....");
        response.setHeader("refresh", "2;url=zhuce.jsp");
    }
%>

</body>
</html>
<%--
  Created by IntelliJ IDEA.
  User: Liu
  Date: 2022/5/15
  Time: 0:01
  To change this template use File | Settings | File Templates.
--%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title>注册</title>
</head>
<body>
<h1>注册</h1>
<script>
    function yz() {
        if (form.uname.value == "") {
            alert('用户名不能为空');
            return;
        }
        if (form.password.value == "") {
            alert('密码不能为空');
            return;
        }
        form.submit();
    }
</script>
<form action="doregister.jsp" method="post" name="form">
    <table>
        <tr>
            <td>用户名</td>
            <td><input type="text" name="uname">
            </td>
        </tr>
        <tr>
            <td>密码</td>
            <td><input type="password" name="password">
            </td>
        </tr>
        <tr>
            <td><input type="button" value="注册" onclick="yz()">
            </td>
            <td><a href="login.jsp">登录</a>
            </td>
        </tr>
    </table>
</form>
</body>
</html>
————————
package com.lwb.dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class BaseDao {
    public Connection getConnection() {
        Connection con = null;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            con=DriverManager.getConnection("jdbc:mysql://localhost:3306/emailusers","root","123456");
        } catch (Exception e) {
            e.printStackTrace();
        }
        return con;
    }
    protected void closeAll(Connection con,PreparedStatement ps,ResultSet rs){
        try {
            if(rs != null)
                rs.close();
            if(ps != null)
                ps.close();
            if(con != null)
                con.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}
package com.lwb.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import test.Email;

import java.util.ArrayList;
import java.util.List;

public class EmailDao extends BaseDao{
    public List<Email> getAll(String uname){
        List<Email>list=new ArrayList<Email>();
        Connection con=getConnection();
        PreparedStatement pred=null;
        ResultSet resultSet=null;
        String sql="select * from email where sjr=?";
        try {
            pred=con.prepareStatement(sql);
            pred.setString(1, uname);
            resultSet=pred.executeQuery();
            while(resultSet.next()){
                Email email=new Email();
                email.setId(resultSet.getInt(1));
                email.setFjr(resultSet.getString(2));
                email.setSjr(resultSet.getString(3));
                email.setTitle(resultSet.getString(4));
                email.setContent(resultSet.getString(5));
                email.setTime(resultSet.getDate(6));
                email.setZt(resultSet.getInt(7));
                list.add(email);
            }
        } catch (SQLException e) {

            e.printStackTrace();
        }
        return list;
    }
}
package com.lwb.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class UserDao extends BaseDao{
    public int Register(String uname,String password){
        int i=-1;
        PreparedStatement pred=null;
        Connection con=getConnection();
        String sql="insert into users(uname,password)values(?,?)";
        try {
            pred= con.prepareStatement(sql);
            pred.setString(1, uname);
            pred.setString(2, password);
            i=pred.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }finally{
            closeAll(con, pred, null);
        }
        return i;
    }
    public boolean Login(String uname,String password){
        boolean f=false;
        PreparedStatement pred=null;
        ResultSet resultSet=null;
        Connection con=getConnection();
        String sql="select * from users where uname=? and password=?";
        try {
            pred=con.prepareStatement(sql);
            pred.setString(1, uname);
            pred.setString(2, password);
            resultSet=pred.executeQuery();
            while(resultSet.next()){
                f=true;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return f;
    }
}
package test;

import java.util.Date;

public class Email {
    private Integer id;
    private String fjr;
    private String sjr;
    private String title;
    private Date time;
    private Integer zt;
    private String content;
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getFjr() {
        return fjr;
    }
    public void setFjr(String fjr) {
        this.fjr = fjr;
    }
    public String getSjr() {
        return sjr;
    }
    public void setSjr(String sjr) {
        this.sjr = sjr;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public Date getTime() {
        return time;
    }
    public void setTime(Date time) {
        this.time = time;
    }
    public Integer getZt() {
        return zt;
    }
    public void setZt(Integer zt) {
        this.zt = zt;
    }
    public Email() {
        super();
    }
    public Email(Integer id, String fjr, String sjr, String title, Date time,
                 Integer zt, String content) {
        super();
        this.id = id;
        this.fjr = fjr;
        this.sjr = sjr;
        this.title = title;
        this.time = time;
        this.zt = zt;
        this.content = content;
    }
}
package test;

public class User {
    private Integer id;
    private String uname;
    private String password;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getUname() {
        return uname;
    }
    public void setUname(String uname) {
        this.uname = uname;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public User() {
        super();
    }
    public User(Integer id, String uname, String password) {
        super();
        this.id = id;
        this.uname = uname;
        this.password = password;
    }
}
<%@page import="test.Email"%>
<%@page import="com.lwb.dao.EmailDao"%>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
  String path = request.getContextPath();
  String basePath = request.getScheme() + "://"
          + request.getServerName() + ":" + request.getServerPort()
          + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
  <base href="<%=basePath%>">
  <title></title>
</head>
<body>
<%
  String uname = (String) session.getAttribute("uname");
  EmailDao dao = new EmailDao();
  List<Email> list = dao.getAll(uname);
%>
欢迎<%=uname%>
<br>
<br>
<table border="1px" cellspacing="0" cellpadding="30px">
  <thead></thead>
  <tr>
    <th>发件人</th>
    <th>标题</th>
    <th>时间</th>
    <th>状态</th>
  </tr>
  <tbody></tbody>
  <%
    for (int i = 0; i < list.size(); i++) {
  %>
  <tr>
    <td><%out.print(list.get(i).getFjr().toString()); %></td>
    <td><%out.print(list.get(i).getTitle().toString()); %></td>
    <td><%out.print(list.get(i).getTime().toString()); %></td>
    <td><%if(list.get(i).getZt()==0){
      out.print("<img src='img/w.png'></img>");
    }else{
      out.print("<img src='img/y.png'></img>");
    }%></td>
  </tr>
  <%
    }
  %>

</table>



</body>
</html>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title></title>
</head>
<body>
<%
    String uname = request.getParameter("uname");
    String password = request.getParameter("password");
    UserDao ud = new UserDao();
    if(ud.Login(uname, password)){
        session.setAttribute("uname", uname);
        request.getRequestDispatcher("main.jsp").forward(request, response);
    }else{
        out.print("登录失败,即将跳回登录页.....");
        response.setHeader("refresh", "2;url=Login.jsp");
    }
%>
</body>
</html>
<%--
  Created by IntelliJ IDEA.
  User: Liu
  Date: 2022/5/15
  Time: 0:00
  To change this template use File | Settings | File Templates.
--%>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title></title>
</head>
<body>
<h1>登录</h1>
<script>
    function yz() {
        if (form.uname.value == null) {
            alert('用户名不能为空');
            return;
        }
        if (form.password.value == null) {
            alert('密码不能为空');
            return;
        }
        if (form.uname.value != null && form.password.value != null) {
            form.submit();
        }
    }
</script>
<form action="dologin.jsp" method="post" name="form">
    <table>
        <tr>
            <td>用户名</td>
            <td><input type="text" name="uname"></td>
        </tr>
        <tr>
            <td>密码</td>
            <td><input type="password" name="password"></td>
        </tr>
        <tr>
            <td><input type="button" value="登录" onclick="yz()"></td>
            <td><a href="zhuce.jsp">注册</a></td>
        </tr>
    </table>
</form>
</body>
</html>
<%@page import="com.lwb.dao.UserDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title></title>
</head>
<body>
<%
    String uname = request.getParameter("uname");
    String password = request.getParameter("password");
    UserDao ud = new UserDao();
    int i=ud.Register(uname, password);
    if(i>0){
        out.print("注册成功,即将跳到登录页.....");
        response.setHeader("refresh", "2;url=login.jsp");
    }else{
        out.print("注册失败,即将跳回注册页.....");
        response.setHeader("refresh", "2;url=zhuce.jsp");
    }
%>

</body>
</html>
<%--
  Created by IntelliJ IDEA.
  User: Liu
  Date: 2022/5/15
  Time: 0:01
  To change this template use File | Settings | File Templates.
--%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML>
<html>
<head>
    <base href="<%=basePath%>">
    <title>注册</title>
</head>
<body>
<h1>注册</h1>
<script>
    function yz() {
        if (form.uname.value == "") {
            alert('用户名不能为空');
            return;
        }
        if (form.password.value == "") {
            alert('密码不能为空');
            return;
        }
        form.submit();
    }
</script>
<form action="doregister.jsp" method="post" name="form">
    <table>
        <tr>
            <td>用户名</td>
            <td><input type="text" name="uname">
            </td>
        </tr>
        <tr>
            <td>密码</td>
            <td><input type="password" name="password">
            </td>
        </tr>
        <tr>
            <td><input type="button" value="注册" onclick="yz()">
            </td>
            <td><a href="login.jsp">登录</a>
            </td>
        </tr>
    </table>
</form>
</body>
</html>