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

📄 rightfilter.java

📁 java学习的必要的资料,servlet的说明很好
💻 JAVA
字号:
package com.estore.struts.utils;

import java.io.IOException;
import java.util.Iterator;
import java.util.Set;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.estore.struts.Globals;
import com.estore.struts.entity.Admin;
import com.estore.struts.entity.Module;
import com.estore.struts.service.AdminService;
import com.estore.struts.service.ModuleService;
/*
 * 控制权限的过滤器。
 * 
 */
public class RightFilter  implements Filter{
	private static ModuleService moduleService;
	static {
		moduleService = (ModuleService) ServiceFactory.getInstance()
		.getService(Globals.MODULE_SERVICE);
	}
	public void destroy() {
		// TODO Auto-generated method stub
		
	}

	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		HttpServletRequest httpServletRequest=(HttpServletRequest)request;
		HttpServletResponse httpServletResponse=(HttpServletResponse)response;
		
		HttpSession session=httpServletRequest.getSession();
		Admin currentAdmin=(Admin) session.getAttribute("currentAdmin");
		Set hadModules=currentAdmin.getModules();
		
		Integer moduleId=Integer.parseInt(request.getParameter("moduleId"));
		
		
			for(Iterator it=hadModules.iterator();it.hasNext();){
				Module m=(Module)it.next();
				if(m.getModuleId().equals(moduleId)){
					chain.doFilter(request, response);
					return;
				}
			}
			
		
		httpServletResponse.sendRedirect(httpServletRequest.getContextPath()+"/admin/noRight.jsp");
		
	}

	public void init(FilterConfig arg0) throws ServletException {
		// TODO Auto-generated method stub
		
	}

}

⌨️ 快捷键说明

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