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

📄 acceptservlet.java

📁 oa办公系统
💻 JAVA
字号:
package cn.jx.ecjtu.oa.servlets.msg;

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

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

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 cn.jx.ecjtu.oa.common.Constant;
import cn.jx.ecjtu.oa.ps.pojo.LoginUser;
import cn.jx.ecjtu.oa.ps.pojo.Message;
import cn.jx.ecjtu.oa.services.*;

public class AcceptServlet extends HttpServlet {

	/**
	 * Constructor of the object.
	 */
	public AcceptServlet() {
		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 {
		PrintWriter out = response.getWriter();
		HttpSession session = request.getSession();
		String sPage = request.getParameter("page");// 获取用户输入的要跳转的页数
		String sId = request.getParameter("setread");// 获取要设置为已读的短信息的ID
		UserInSession u = (UserInSession) session
				.getAttribute(Constant.USER_IN_SESSION);// 从session中取得用户
		if (u != null) {
			int page = 1, id = 0;
			int accId = u.getId();
			request.setAttribute("accId", accId);
			// int accId=1;
			try {// 将取的参数转化为整型
				if (sPage != null) {
					page = Integer.parseInt(sPage);
				}
			} catch (Exception e) {// 异常
				page = 1;
			}
			try {// 将取的参数转化为整型
				if (sId != null) {
					id = Integer.parseInt(sId);
					msgService.readMsg(accId, id);
				}
			} catch (Exception e) {// 异常
				id = 0;
			}
			// 调用MessageService取得短信息,当前页面,总信息数,总页面数
			Result result = msgService.getAccMsg(accId, page);
			if (result != null) {
				if (result.getRet() == ResultType.RET_SUCCESS) {// 取得成功
					// 把取得的数据(短信息,当前页面,总信息数,总页面数)放入到request中
					for (Map.Entry<String, Object> entry : result
							.listAttribute().entrySet()) {
						request.setAttribute(entry.getKey(), entry.getValue());
					}
					// 取得短信息列表
					List<Message> msgs = (List<Message>) result
							.getAttribute("listMessage");
					List<Integer> senderIds = new ArrayList<Integer>();// 定义一个存储发送者ID的列表
					for (Message msg : msgs) {
						senderIds.add(msg.getSendId());
					}
					// 通过发送者ID取得发送人信息
					List<LoginUser> users = userService
							.getUsersByIds(senderIds);
					Map<Integer, String> userMap = new HashMap<Integer, String>();
					for (LoginUser user : users) {// 把用户ID和name放入映射表
						userMap.put(user.getId(), user.getRealName());
					}
					request.setAttribute("userMap", userMap);// 把映射表放入request中
					request.getRequestDispatcher("acc_msg.jsp").forward(
							request, response);
				} else if (result.getRet() == ResultType.RET_FAIL) {// 取得失败
					request.setAttribute("message", result.getMessage());
					request.getRequestDispatcher("../error.jsp").forward(
							request, response);
				} else {// 异常
					request.getRequestDispatcher("../error.jsp").forward(
							request, response);
				}
			} else {
				response.sendRedirect("nomsg.jsp");
			}
		} else {
			out.print("您还未登陆!请登陆后再试!");
		}
	}

	/**
	 * Initialization of the servlet. <br>
	 * 
	 * @throws ServletException
	 *             if an error occure
	 */
	private MessageService msgService;

	private SysUserService userService;

	public void init() throws ServletException {// 初使化service
		msgService = (MessageService) ServiceFactory
				.getService(MessageService.class);
		userService = (SysUserService) ServiceFactory
				.getService(SysUserService.class);
	}

}

⌨️ 快捷键说明

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