Jsp第十一次作业

1.第十二周上机作业(邮件功能)的控制层代码改用为servlet实现。
2.学习通发布了考试,截止到5.27晚8点。

第一servlet部分

登录:

package Email.servletPackage;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import Email.daoPackage.UsersDao;

public class DengluServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public DengluServlet() {
        super();
    }

    /**
     * Destruction of the servlet. <br>
     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to get.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        doPost(request, response);
    }

    /**
     * The doPost method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to post.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();//创建out对象
        HttpSession session= request.getSession();//在servlet中获取session
        
        response.setCharacterEncoding("utf-8");
        request.setCharacterEncoding("utf-8");
        String uname = request.getParameter("name");
        String upassword = request.getParameter("password");
        UsersDao ud = new UsersDao();
        if (ud.DengLu(uname, upassword)) {
            session.setAttribute("user", uname);
            request.getRequestDispatcher("T1-Email/main.jsp").forward(request,response);
        } else {
            out.print("登陆失败,3秒后返回登录页!");
            response.setHeader("refresh", "3;url=T1-Email/Email1.jsp");
        }
    }

    /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}

注册:

package Email.servletPackage;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import Email.daoPackage.UsersDao;

public class ZhuceServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public ZhuceServlet() {
        super();
    }

    /**
     * Destruction of the servlet. <br>
     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to get.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        doPost(request, response);
    }

    /**
     * The doPost method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to post.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();//创建out对象
        
        response.setCharacterEncoding("utf-8");
        request.setCharacterEncoding("utf-8");
        String uname = request.getParameter("name");
        String upassword1 = request.getParameter("password1");

        UsersDao ud = new UsersDao();
        int i = ud.ZhuCe(uname, upassword1);
        if (i > 0) {
            out.print("注册成功,3秒后跳转登录页!");
            response.setHeader("refresh", "3;url=T1-Email/Email1.jsp");
        } else {
            out.print("注册失败,3秒后返回注册页!");
            response.setHeader("refresh", "3;url=T1-Email/Email2.jsp");
        }
    }

    /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}

写信:

package Email.servletPackage;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import Email.daoPackage.EmailDao;
import Email.entityPackage.Email;

public class WriteServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public WriteServlet() {
        super();
    }

    /**
     * Destruction of the servlet. <br>
     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to get.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        doPost(request, response);
    }

    /**
     * The doPost method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to post.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();//创建out对象
        HttpSession session= request.getSession();//在servlet中获取session
        
            request.setCharacterEncoding("utf-8");
            
            String name=(String)session.getAttribute("user");// 发件人在session中获取
            String shou=request.getParameter("shou");        //收件人
            String title=request.getParameter("head");
            String content=request.getParameter("body");
            
            Email e=new Email();
            e.setEfa(name);
            e.setEtitle(title);
            e.setEcontent(content);
            e.setEname(shou);
            
            EmailDao ed=new EmailDao();
            ed.addEmail(e);
            
            out.print("发送成功,即将跳转到首页!");
            response.setHeader("refresh", "3;url=T1-Email/main.jsp");
    }

    /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}

查看:

package Email.servletPackage;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import Email.daoPackage.EmailDao;
import Email.entityPackage.Email;

public class LookServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public LookServlet() {
        super();
    }

    /**
     * Destruction of the servlet. <br>
     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to get.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        doPost(request, response);
    }

    /**
     * The doPost method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to post.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();//创建out对象
        HttpSession session=request.getSession();
        
        String id = request.getParameter("id");
        int eid = Integer.parseInt(id);

        EmailDao ed = new EmailDao();
        ed.GauBian(eid);
        Email email = ed.getOneEmail(eid);
        session.setAttribute("email", email);
        request.getRequestDispatcher("T1-Email/Look.jsp").forward(request, response);
    }

    /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}

删除:

package Email.servletPackage;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import Email.daoPackage.EmailDao;

public class DelServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public DelServlet() {
        super();
    }

    /**
     * Destruction of the servlet. <br>
     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to get.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        doPost(request, response);
    }

    /**
     * The doPost method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to post.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();//创建out对象
        
        request.setCharacterEncoding("utf-8");
        
        int emailId=Integer.parseInt(request.getParameter("id"));
        EmailDao ed=new EmailDao();
        ed.delEmail(emailId);
        
        response.sendRedirect("T1-Email/main.jsp");
    }

    /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}

退出:

package Email.servletPackage;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class ByeServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public ByeServlet() {
        super();
    }

    /**
     * Destruction of the servlet. <br>
     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to get.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        doPost(request, response);
    }

    /**
     * The doPost method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to post.
     * 
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();//创建out对象
        HttpSession session= request.getSession();//在servlet中获取session
        
        out.print("退出成功,3秒后返回登录页!");
        session.invalidate();
        response.setHeader("refresh", "3;url=T1-Email/Email1.jsp");
    }

    /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}

第二jsp部分

登录:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Email1.jsp</title>
</head>

<body>
    <form action="../DengluServlet" method="post" name="one">
        请输入用户名:<input name="name" type="text"><br>
        请输入密码:&nbsp;&nbsp;&nbsp;&nbsp;<input name="password" type="password"><br>
        <input type="button" value="登录" onclick="denglu()"> 
        <a href="Email2.jsp">注册新用户 </a>
        <script type="text/javascript">
            function denglu() {
                if (one.name.value == "") {
                    alert("用户名不能为空!");
                    return;
                }
                if (one.password.value == "") {
                    alert("密码不能为空!");
                    return;
                }
                one.submit();
            }
        </script>
    </form>
</body>
</html>

注册:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Email2.jsp</title>
</head>

<body>
    <form action="panduan2.jsp" method="post" name="two">
        请输入用户名:<input name="name" type="text"><br>
        请输入密码:&nbsp;&nbsp;&nbsp;&nbsp;<input name="password1" type="password"><br>
        再次输入密码:<input name="password2" type="password"><br> 
        <input type="button" value="注册" onclick="zhuce()"> 
            <a href="Email1.jsp">返回登录</a>
        <script type="text/javascript">
            function zhuce() {
                if (two.name.value == "") {
                    alert("用户名不能为空!");
                    return;
                }
                if (two.password1.value == "") {
                    alert("密码不能为空!");
                    return;
                }
                if (two.password2.value == "") {
                    alert("再次输入密码不能为空!");
                    return;
                }
                if (two.password1.value != two.password2.value) {
                    alert("密码不一致,请重新输入!");
                    return;
                }
                two.submit();
            }
        </script>
    </form>
</body>
</html>

主页:

<%@page import="Email.entityPackage.Email"%>
<%@page import="Email.daoPackage.EmailDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>  
    <title>main.jsp</title>
  </head>
  
  <body>
    <%
    EmailDao mail=new EmailDao();
    String user=(String) session.getAttribute("user");
    List<Email> MailList=mail.getAllEmail(user);
     %>
 
    欢迎你:<%=user %> &nbsp;&nbsp;&nbsp;&nbsp;<a href="Write.jsp">写邮件</a>
    <br><br>
    <table border="1px" cellpadding="15px" align="center">
    <tr>
     <td>编号</td>
     <td>收件人</td>
     <td>标题</td>
     <td>状态</td>
     <td>发件人</td>
     <td>时间</td>
     <td>操作</td>
     <td>操作</td>
    </tr>
    <%for(int i=0;i<MailList.size();i++){ %>
    <tr>
     <td><%out.print(MailList.get(i).getEid()); %></td>
     <td><%out.print(MailList.get(i).getEname());%></td>
     <td><a href="../LookServlet?id=<%=MailList.get(i).getEid()%>"><%out.print(MailList.get(i).getEtitle()); %></a></td>
     <td>
     <%if(MailList.get(i).getEstate()==0){ %>
     <img src="images/weidu.png"/>
     <%}else{ %>
     <img src="images/yidu.png"/>
     <%} %>
     </td>
     <td><%out.print(MailList.get(i).getEfa()); %></td>
     <td><%out.print(MailList.get(i).getEtime()); %></td>
     <td><a href="Write.jsp?reply=<%=MailList.get(i).getEfa()%>">回复</a></td>
     <td><a href="../DelServlet?id=<%=MailList.get(i).getEid()%>">删除</a></td>
    </tr>
    <%} %>
    </table>
    
    <br><a href="../ByeServlet">退出登录</a>
  </body>
</html>

写信:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'Write.jsp' starting page</title>
</head>

<body>
    <form action="../WriteServlet" method="post" >
        收件人:<input type="text" name="shou" value="<%=request.getParameter("reply")%>"><br> 
        主 题:&nbsp;&nbsp;<input type="text" name="head"><br> 
        内 容:<br>
        <textarea rows="10" cols="30" name="body"></textarea>
        <br> <input type="submit" value="发送邮件">
        <a href="main.jsp">返回</a>
    </form>
</body>
</html>

查看:

<%@page import="Email.entityPackage.Email"%>
<%@page import="Email.daoPackage.EmailDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'Look.jsp' starting page</title>
</head>

<body>
    <%
        String id = request.getParameter("id");
        int eid = Integer.parseInt(id);

        EmailDao ed = new EmailDao();
        ed.GauBian(eid);
        Email email = ed.getOneEmail(eid);
    %>
    
    <h3>邮件详情</h3>
    <table border="1px" cellpadding="15px">
        <tr>
            <td>发件人:</td>
            <td><%=email.getEfa()%></td>
        </tr>
        <tr>
            <td>主题:</td>
            <td><%=email.getEtitle()%></td>
        </tr>
        <tr>
            <td>内容:</td>
            <td><%=email.getEcontent()%></td>
        </tr>
        <tr>
            <td>时间:</td>
            <td><%=email.getEtime()%></td>
        </tr>
    </table><br>
    <a href="T1-Email/main.jsp">返回</a>
</body>
</html>

posted @ 2022-05-28 16:49  吴静怡  阅读(31)  评论(0编辑  收藏  举报