zoukankan      html  css  js  c++  java
  • Jsp第八次作业

    BaseDao.java

    package com.gd.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/user", "root", "root");
                } 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();
            }
        }
        
    }
    

    MsgDao.java

    package com.gd.dao;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    import com.gd.entity.Msg;
    
    public class MsgDao extends BaseDao{
        //发送,回复---insert操作
        
        //邮件列表  --select * from  msg where username=....
        public List<Msg> getMailByReceiver(String receiverName){
            List<Msg> list=new ArrayList<Msg>();
            try {
                Connection con = getConnection();//获取连接
                String sql = "select * from msg where sendto=?";//编写sql语句
                PreparedStatement ps = con.prepareStatement(sql);
                ps.setString(1, receiverName);////给sql问号赋值
                ResultSet rs = ps.executeQuery();//执行查询
                //处理查询结果
                while(rs.next()){
                    //循环读取rs结果集,每一行作为一个msg对象,放入list集合中
                    Msg msg=new Msg();
                    msg.setMsgid(rs.getInt("msgid"));
                    msg.setMsgcontent(rs.getString("msgcontent"));
                    msg.setMsg_create_date(rs.getDate("msg_create_date"));
                    msg.setSendto(rs.getString("sendto"));
                    msg.setState(rs.getInt("state"));
                    msg.setTitle(rs.getString("title"));
                    msg.setUsernname(rs.getString("username"));
                    list.add(msg);
                }
                closeAll(con, ps, rs);
                
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    
            return list;
        }
        
        
        //根据标题查内容   select 
        public Msg getMailById(int id){
            Msg msg=new Msg();
            try {
                
                Connection con = getConnection();//获取连接
                String sql = "select * from msg where id=?";//编写sql语句
                PreparedStatement ps = con.prepareStatement(sql);
                ps.setInt(1, id);////给sql问号赋值
                ResultSet rs = ps.executeQuery();//执行查询
                //处理查询结果
                while(rs.next()){
                    //循环读取rs结果集,每一行作为一个msg对象,放入list集合中
                    
                    msg.setMsgid(rs.getInt("msgid"));
                    msg.setMsgcontent(rs.getString("msgcontent"));
                    msg.setMsg_create_date(rs.getDate("msg_create_date"));
                    msg.setSendto(rs.getString("sendto"));
                    msg.setState(rs.getInt("state"));
                    msg.setTitle(rs.getString("title"));
                    msg.setUsernname(rs.getString("username"));
                    
                }
                closeAll(con, ps, rs);
                
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return msg;
        }
    
        
        //阅读状态改变,,,未读 已读   update
        
        //删除邮件  delete 
    
    }

    UsersDao.java

    package com.gd.dao;
    
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    public class UsersDao extends BaseDao {
        // 登录功能
        public boolean login(String uname, String upwd) throws SQLException {
            // 获取连接
            Connection conn = getConnection();
            // 编写sql语句 
            String sql = "select * from users where username=? and password=?";
            // 执行sql语句
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setString(1, uname);
            ps.setString(2, upwd);
            ResultSet rs = ps.executeQuery();
            if (rs.next()) {
                closeAll(conn, ps, rs);
                return true;
            } else {
                closeAll(conn, ps, rs);
                return false;
            }
        }
    //    public static void main(String[] args) {
    //        UsersDao ud=new UsersDao();
    //        try {
    //            System.out.println(ud.login("tom", "456"));
    //        } catch (SQLException e) {
    //            // TODO Auto-generated catch block
    //            e.printStackTrace();
    //        }
    //    }
    
    }

    Msg.java

    package com.gd.entity;
    
    import java.sql.Date;
    
    public class Msg {
        int msgid;
        String usernname;
        String title;
        String msgcontent;
        int state;
        String sendto;
        String msg_create_date;
        public int getMsgid() {
            return msgid;
        }
        public void setMsgid(int msgid) {
            this.msgid = msgid;
        }
        public String getUsernname() {
            return usernname;
        }
        public void setUsernname(String usernname) {
            this.usernname = usernname;
        }
        public String getTitle() {
            return title;
        }
        public void setTitle(String title) {
            this.title = title;
        }
        public String getMsgcontent() {
            return msgcontent;
        }
        public void setMsgcontent(String msgcontent) {
            this.msgcontent = msgcontent;
        }
        public int getState() {
            return state;
        }
        public void setState(int state) {
            this.state = state;
        }
        public String getSendto() {
            return sendto;
        }
        public void setSendto(String sendto) {
            this.sendto = sendto;
        }
        public String getMsg_create_date() {
            return msg_create_date;
        }
        public void setMsg_create_date(Date date) {
            this.msg_create_date = msg_create_date;
        }
    
    }

    Users.java

    package com.gd.entity;
    
    public class Users {
        String username;
        String password;
        String email;
        public String getUsername() {
            return username;
        }
        public void setUsername(String username) {
            this.username = username;
        }
        public String getPassword() {
            return password;
        }
        public void setPassword(String password) {
            this.password = password;
        }
        public String getEmail() {
            return email;
        }
        public void setEmail(String email) {
            this.email = email;
        }
    
    }

    detail.jsp

    <%@page import="com.gd.entity.Msg"%>
    <%@page import="com.gd.dao.MsgDao"%>
    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
        
     <%
        String path = request.getContextPath();
        String basePath = request.getScheme() + "://"
                + request.getServerName() + ":" + request.getServerPort()
                + path + "/";
    %>
        
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Insert title here</title>
    </head>
    <body>
        <%
            int id = Integer.parseInt(request.getParameter("id"));
            MsgDao md = new MsgDao();
            Msg m = md.getMailById(id);
        %>
        <p>
            题目:<%=m.getTitle()%></p>
        <p>
            来自:<%=m.getUsernname()%></p>
        <p>
            时间:<%=m.getMsg_create_date()%></p>
        <p>
            内容:<%=m.getMsgcontent()%></p>
    回复   <a href="main.jsp">返回</a>
    </body>
    </html>

    dologin.jsp

    <%@page import="com.gd.entity.Users"%>
    <%@page import="com.gd.dao.UsersDao"%>
    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Insert title here</title>
    </head>
    <%
        request.setCharacterEncoding("utf-8");
        String uname = request.getParameter("uname");
        String upwd = request.getParameter("upwd");
        UsersDao ud = new UsersDao();
        if (ud.login(uname, upwd)){
            //登陆成功 创建User页面,并放入session
            Users u=new Users();
            u.setUsername(uname);
            u.setPassword(upwd);
            session.setAttribute("user", u);
            request.getRequestDispatcher("main.jsp").forward(request, response);
            }
        else
            response.sendRedirect("index.jsp");
    %>
    </html>

    index.java

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
        
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Insert title here</title>
    </head>
    <body>
       <form action="dologin.jsp" method="post">
    用户名:<input type="text" name="uname" value="kitty" /><Br>
    密码 :<input type="password" name="upwd" value="777"/><br>
    
    <input type="submit" value="登录">
    
    </form>
      </body>
    </html>

    main.jsp

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
        <%@page import="java.sql.SQLException"%>
        
    <%@page import="com.gd.entity.Msg"%>
    <%@page import="com.gd.dao.MsgDao"%>
    <%@page import="com.gd.entity.Users"%>
    <%@page import="java.util.List"%>
    <%@page import="com.gd.dao.BaseDao"%>
    <%@page import="com.gd.entity.Msg"%>
    <%@page import="java.sql.DriverManager"%>
    <%@page import="java.sql.PreparedStatement"%>
    <%@page import="java.sql.ResultSet"%>
    <%@page import="java.sql.Connection"%>
    
    <%
        String path = request.getContextPath();
        String basePath = request.getScheme() + "://"
                + request.getServerName() + ":" + request.getServerPort()
                + path + "/";
    %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Insert title here</title>
    </head>
    <body>
        欢迎页面!!!欢迎你!!!<%
        Users u = (Users) session.getAttribute("user");
        out.print(u.getUsername());
        MsgDao md=new MsgDao();
        List<Msg> list=md.getMailByReceiver(u.getUsername());
        out.print(list.size());
    %>
    <a href="write.jsp">写邮件</a>
    <table border="1"  width="1000">
    <tr>
    <td>邮件id</td>
    <td>发件人</td>
    <td>标题</td>
    <td>收件人</td>
    <td>状态</td>
    <td>时间</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    
    <%
    for(int i=0;i<list.size();i++){
     %>
     <tr>
     <td><%=list.get(i).getMsgid() %></td>
    <td><%=list.get(i).getUsernname() %></td>
    <td><a href="detail.jsp?id=<%=list.get(i).getMsgid()%>"><%=list.get(i).getTitle()%></a></td>
    <td><%=list.get(i).getSendto() %></td>
    <td><% if(list.get(i).getState()==1){ %>
    <img src="images/sms_unReaded.png"></img>
    <%}else{ %>
    <img src="images/sms_readed.png"></img>
    <%} %>
    
    
    </td><!-- 0已读,1未读 -->
    <td><%=list.get(i).getMsg_create_date() %></td>
     <td><a href="">回复</a></td>
      <td><a href="">删除</a></td>
     
     </tr>
     
     
     
     <%} %>
    
    
    </talbe>
    
    
    </body>
    </html>

    write.jsp

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
        <%@page import="java.sql.SQLException"%>
        
    <%@page import="com.gd.entity.Msg"%>
    <%@page import="com.gd.dao.MsgDao"%>
    <%@page import="com.gd.entity.Users"%>
    <%@page import="java.util.List"%>
    <%@page import="com.gd.dao.BaseDao"%>
    <%@page import="com.gd.entity.Msg"%>
    <%@page import="java.sql.DriverManager"%>
    <%@page import="java.sql.PreparedStatement"%>
    <%@page import="java.sql.ResultSet"%>
    <%@page import="java.sql.Connection"%>
    
    <%
        String path = request.getContextPath();
        String basePath = request.getScheme() + "://"
                + request.getServerName() + ":" + request.getServerPort()
                + path + "/";
    %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Insert title here</title>
    </head>
    <body>
        欢迎页面!!!欢迎你!!!<%
        Users u = (Users) session.getAttribute("user");
        out.print(u.getUsername());
        MsgDao md=new MsgDao();
        List<Msg> list=md.getMailByReceiver(u.getUsername());
        out.print(list.size());
    %>
    <a href="write.jsp">写邮件</a>
    <table border="1"  width="1000">
    <tr>
    <td>邮件id</td>
    <td>发件人</td>
    <td>标题</td>
    <td>收件人</td>
    <td>状态</td>
    <td>时间</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    
    <%
    for(int i=0;i<list.size();i++){
     %>
     <tr>
     <td><%=list.get(i).getMsgid() %></td>
    <td><%=list.get(i).getUsernname() %></td>
    <td><a href="detail.jsp?id=<%=list.get(i).getMsgid()%>"><%=list.get(i).getTitle()%></a></td>
    <td><%=list.get(i).getSendto() %></td>
    <td><% if(list.get(i).getState()==1){ %>
    <img src="images/sms_unReaded.png"></img>
    <%}else{ %>
    <img src="images/sms_readed.png"></img>
    <%} %>
    
    
    </td><!-- 0已读,1未读 -->
    <td><%=list.get(i).getMsg_create_date() %></td>
     <td><a href="">回复</a></td>
      <td><a href="">删除</a></td>
     
     </tr>
     
     
     
     <%} %>
    
    
    </talbe>
    
    
    </body>
    </html>

     

     

     

  • 相关阅读:
    c博客06-2019-结构体&文件
    C博客作业05--2019-指针
    C语言博客作业04--数组
    Java购物车
    c博客06-2019-结构体&文件
    数组和指针的选择排序和冒泡排序区别
    C博客作业05--2019-指针
    面向对象设计大作业-图书馆系统
    java-购物车大作业
    互评-OO之接口-DAO模式代码阅读及应用
  • 原文地址:https://www.cnblogs.com/gjm717/p/12885653.html
Copyright © 2011-2022 走看看