⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adminlogonprocessor.java

📁 Java.Web开发详解.书中例子的源代码,全部都有
💻 JAVA
字号:
package org.sunxin.guestbook.controller;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

import org.sunxin.guestbook.*;
import org.sunxin.guestbook.beans.*;

public class AdminLogonProcessor implements Processor
{

    public void perform(HttpServletRequest req,
                        HttpServletResponse resp,
                        ServletContext sc)
        throws IOException, ServletException,UserException
    {
        //在请求对象中保存manager属性,XsltServlet将根据这个属性的值来判断
        //是否将样式表顶层参数user的值设置为“manager”。
        req.setAttribute("manager","manager");

        String action = req.getParameter("action");
        //判断用户是访问管理员登录页面还是提交登录信息。
        if (null == action || !"logon".equals(action))
        {
            try
            {
                StringBuffer sb = new StringBuffer(64);
                sb.append("<?xml version=\"1.0\" encoding=\"GB2312\"?>");
                sb.append("<page name=\"logon\">");
                sb.append("<logon/></page>");
                req.setAttribute("page", sb.toString());
            }
            catch (Exception e)
            {
                throw new ServletException("页面产生错误!");
            }
        }
        else
        {
            String username = req.getParameter("username");
            String password = req.getParameter("password");

            if (null == username || null == password ||
                "".equals(username) || "".equals(password))
            {
                throw new UserException(
                    "用户名或密码不能为空,请<a href=\"admin_logon.jsp\">返回</a>重新输入!");
            }

            User user = new User();
            user.setUsername(username);
            user.setPassword(password);

            GuestbookDB gstDB = (GuestbookDB) sc.getAttribute("gstdb");

            boolean b = gstDB.validateManager(user);

            if (false==b)
            {
                throw new UserException(
                    "用户名或密码错误,请<a href=\"admin_logon.jsp\">返回</a>重新输入!");
            }
            else
            {
                HttpSession session = req.getSession();
                session.setAttribute("manager", username);
                String strMsg ="登录成功,<a href=\"admin_index.jsp\">查看留言</a>";
                req.setAttribute("success", strMsg);
                new SuccessProcessor().perform(req, resp, sc);
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -