jsp第十一周作业

1.建库,建表2个
用户表(id,用户名,密码)
邮件表(id,发件人,收件人,标题,内容,发送时间,状态)

2.建model层
entity,dao包

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<html>
  <head>
    

  </head>
  
  <body>
  <script type="text/javascript">
  function loginButton(){
  if(loginFrom.uname.value==""){
  alert("用户名不能为空");
  return;
  }
  if(loginFrom.upwd.value==""){
  alert("密码不能为空");
  return;
  }
  loginFrom.submit();
  }
  </script>
  <form action="dologin.jsp" name="loginFrom" method="post">
用户名:<input type="text" name="uname"/><br>
密码:<input type="password" name="upwd"/><br>
<input type="button" value="登录" onclick="loginButton()"/><br>
<a href="zc.jsp">注册</a>
</form>

  </body>
</html>
<%@page import="com.ff.dao.emailDao"%>
<%@page import="com.ff.dao.usersDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<html>
  <head>
    

  </head>
  
  <body>
   <%
   request.setCharacterEncoding("utf-8");
   String uname= request.getParameter("uname");
   String upwd=request.getParameter("upwd");
   usersDao ud=new usersDao();
   emailDao ed=new emailDao();
   if(ud.login(uname, upwd)){
   session.setAttribute("uname", uname);
   request.getRequestDispatcher("main.jsp").forward(request, response);
   }else{
   out.print("登录失败,5秒后跳回登录页");
   response.setHeader("refresh", "5;url=login.jsp");
   }
    %>
  </body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>

<html>
<head>


</head>

<body>
    <script type="text/javascript">
        function zcButton() {
            if (loginForm.uname.value == "") {
                alert("用户名不能为空");
                return;
            }
            if (loginForm.upwd.value == "") {
                alert("密码不能为空");
                return;
            }
            if (loginForm.rupwd.value == "") {
                alert("未确认密码");
                return;
            }
            loginForm.submit();
        }
    </script>
    <form action="dozc.jsp" name="loginForm" method="post">
        请输入用户名:<input type="text" name="uname" /><br> 
        请输入密码:<input type="password" name="upwd" /><br> 
        确认密码:<input type="password" name="rupwd" /><br>
         <input type="button" value="注册" onclick="zcButton()" /><br> 
         <a href="login.jsp">返回登录</a>

    </form>
</body>
</html>
<%@page import="com.ff.dao.usersDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>

<html>
<head>


</head>

<body>
    <%
        request.setCharacterEncoding("utf-8");
        String uname = request.getParameter("uname");
        String upwd = request.getParameter("upwd");
        String rupwd = request.getParameter("rupwd");
        if (upwd.equals(rupwd)) {
            usersDao ud = new usersDao();
            ud.register(uname, upwd);
            out.print("注册成功5秒返回登录页!!!");
            response.setHeader("refresh", "5;url=login.jsp");
        } else {
            out.print("两次密码不一致,5秒后跳回注册页!!!");
            response.setHeader("refresh", "5;url=zc.jsp");
        }
    %>
</body>
</html>
<%@page import="com.ff.entity.email"%>
<%@page import="com.ff.dao.emailDao"%>

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<html>
<head>
</head>

<body>
    <%
        request.setCharacterEncoding("utf-8");
        String uname = (String)session.getAttribute("uname");
        emailDao ed=new emailDao();
        List<email> list=ed.getMailByReceiver(uname);
    %>
    欢迎你,<%=uname%><br>

    <table width="800px" style="border: 1px solid pink;">
        <tr>
            <td>发件人</td>
            <td>主题</td>
            <td>状态</td>
            <td>时间</td>
        </tr>
        <%
                if (list.size() == 0) {
                out.print("还没有人给您写文件哦!!!");
                } else {
                for(int i=0;i<list.size();i++){
            %>
        <tr>
            <td>
                <%
                    out.print(list.get(i).getAddress());
                %>
            </td>
            <td>
                <%
                    out.print(list.get(i).getTitle());
                %>
            </td>
            <td>
                <%
                    if (list.get(i).getState() ==0){
                            out.print("<img src='unread.png'></img>");
                        } else {
                            out.print("<img src='read.png'/>");
                        }
                %>
            </td>
            <td><%out.print(list.get(i).getTime()); %></td>
        </tr>
        <%}}%>
    </table>


</body>
</html>

 

package com.ff.dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class BaseDao {


    //获取连接
    protected Connection getConnection(){
        Connection conn=null;
            try {
                Class.forName("com.mysql.jdbc.Driver");
                // 2.建立连接
                conn = DriverManager.getConnection(
                        "jdbc:mysql://localhost:3306/test", "root", "123456");
            } catch (Exception e) {
                e.printStackTrace();
            } 
            return conn;
    }    
    

    
    
    //关闭连接
    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.ff.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import com.ff.entity.email;

public class emailDao extends BaseDao {
    public List<email> getMailByReceiver(String uname) {
        List<email> list=new ArrayList<email>();
        Connection con=getConnection();
        String sql="select * from email where receiver=?";
        PreparedStatement ps=null;
        ResultSet rs=null;
        try{
            ps=con.prepareStatement(sql);
            ps.setString(1,uname);
            rs=ps.executeQuery();
            while(rs.next()){
                email e=new email();
                e.setId(rs.getInt(1));
                e.setAddress(rs.getString(2));
                e.setReceiver(rs.getString(3));
                e.setTitle(rs.getString(4));
                e.setContents(rs.getString(5));
                e.setTime(rs.getDate(6));
                e.setState(rs.getInt(7));
                list.add(e);
            }
        }catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }finally{
            closeAll(con, ps, rs);
        }
        return list;
        
    }
}
package com.ff.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;



public class usersDao extends BaseDao{
    //登录
    public boolean login(String uname,String upwd){
        boolean f=false;
        //建立连接
        Connection conn=getConnection();
        //编写SQL语句
        String sql="select * from users where uname=? and upwd=?";
        PreparedStatement ps;
        try{
            ps=conn.prepareStatement(sql);
            ps.setString(1,uname);
            ps.setString(2, upwd);
            ResultSet rs=ps.executeQuery();
            if(rs.next()){
                f=true;
                closeAll(conn, ps, rs);
            }
        }catch (Exception e) {
            // TODO: handle exception
        }
        return f;
    }
    //注册
    public void register(String uname,String upwd) {
        Connection conn=getConnection();
        PreparedStatement ps=null;
        try{
            String sql="insert into users(uname,upwd)value(?,?)";
            ps=conn.prepareStatement(sql);
            ps.setString(1, uname);
            ps.setString(2, upwd);
            ps.executeUpdate();
        }catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }finally{
            closeAll(conn, ps, null);
        }
        
        
    }
    

}
package com.ff.entity;

import java.util.Date;

public class email {
private int id;
private String address;
private String receiver;
private String title;
private String contents;
private Date time;
private int state;
public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
public String getAddress() {
    return address;
}
public void setAddress(String address) {
    this.address = address;
}
public String getReceiver() {
    return receiver;
}
public void setReceiver(String receiver) {
    this.receiver = receiver;
}
public String getTitle() {
    return title;
}
public void setTitle(String title) {
    this.title = title;
}
public String getContents() {
    return contents;
}
public void setContents(String contents) {
    this.contents = contents;
}
public Date getTime() {
    return time;
}
public void setTime(Date time) {
    this.time = time;
}
public int getState() {
    return state;
}
public void setState(int state) {
    this.state = state;
}




}
package com.ff.entity;

public class users {
private int id;
private String uname;
private String upwd;
public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
public String getUname() {
    return uname;
}
public void setUname(String uname) {
    this.uname = uname;
}
public String getUpwd() {
    return upwd;
}
public void setUpwd(String upwd) {
    this.upwd = upwd;
}
public users() {
    super();
}

}

 

3.登陆,注册,登陆后显示全部邮件
11.png

 

posted @ 2022-05-14 20:03  聂芳芳  阅读(10)  评论(0编辑  收藏  举报