package com.cn.servlet;

import java.io.IOException;
import java.util.List;

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

import com.cn.domain.Admin;
import com.cn.service.AdminService;
import com.cn.service.impl.AdminServiceImpl;

/**
 * 
 * @ClassName: GetAllAmdinServlet
 * @Description: 管理员获取所有管理员信息的Servlet
 * @author: ljy
 * @date: 2019年11月20日 下午12:55:22
 */
public class GetAllAdminServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    // 声明一个AdminService类型的变量，用于访问管理员相关的业务逻辑
    private AdminService adminService = new AdminServiceImpl();
    
    /**
     * 处理GET请求的方法。
     * 当客户端发送GET请求时，这个方法会被调用。
     * @param request HttpServletRequest对象，包含客户端请求信息。
     * @param response HttpServletResponse对象，用于发送响应到客户端。
     * @throws ServletException 可能抛出的Servlet异常。
     * @throws IOException 可能抛出的IO异常。
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        
        // 使用AdminService的getAllAdmin方法获取所有管理员的列表
        List<Admin> adminList = adminService.getAllAdmin();
        // 将管理员列表设置为request的属性，以便在JSP页面中可以访问
        request.setAttribute("adminList", adminList);
        
        // 使用RequestDispatcher将请求转发到指定的JSP页面
        // "pages/admin/right/getAllAdmin.jsp"是JSP文件的路径，用于展示所有管理员信息
        request.getRequestDispatcher("pages/admin/right/getAllAdmin.jsp").forward(request, response);
        
    }
}