`
miaoge
  • 浏览: 109331 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类

【HRMS】SSH整合配置文件,做权限设置的过滤器代码

阅读更多

三大框架整合的配置文件信息可下载;

做权限设置的过滤器代码:过滤器在web.xml中的配置在下面的压缩包中

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

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.wepull.hrms.dto.UserDto;
/**
 * 过滤器类,用来做权限设置
 * @author 康苗
 *
 */
public class SecureFilter implements Filter {
	
	List<String> urlList = new ArrayList<String>();
	public void destroy() { 
	}
	/**拦截特定的请求
	 * 先取session中的用户信息角色所对应的权限urls
	 * 获取当前请求的url
	 * 然后做判断 是否在urls中
	 * */
	public void doFilter(ServletRequest req, ServletResponse resp,FilterChain chain)
	                                            throws IOException, ServletException {
		HttpServletRequest h_req = (HttpServletRequest) req;
		HttpServletResponse h_resp = (HttpServletResponse) resp;
		h_req.setCharacterEncoding("UTF-8");
		h_resp.setCharacterEncoding("UTF-8");
		//获得session中用户的信息
		HttpSession session = h_req.getSession();
		UserDto userDto = (UserDto) session.getAttribute("userInfo");  
		String uri = h_req.getRequestURI().substring(1);
		uri = uri.substring(uri.indexOf("/"));
		System.out.println("uri:-------" + uri);
		if("/".equals(uri)) {
			chain.doFilter(h_req, h_resp); 	
			return;
		}
		
		if (urlList.contains(uri)){
			chain.doFilter(h_req, h_resp); 	return;
		}
		if (userDto != null) {
			if(1==userDto.getRoleDto().getId()){
				chain.doFilter(h_req, h_resp);
				return;
			}else if (userDto.getUrls() != null) {
				if (userDto.getUrls().contains(uri)) {
					chain.doFilter(h_req, h_resp);  
					return;
				} else {
					String str = "<script laguage='JavaScript'> alert('对不起!你无权操作!');window.history.go(-1);</script>";
					h_req.setAttribute("message", str);
					h_req.getRequestDispatcher("../welcome.jsp").forward(h_req,h_resp);
					return;
				}
			} else {
				String str = "<script laguage='JavaScript'> alert('你没有权限!请联系系统管理员!');</script>";
				h_req.setAttribute("message", str);
				h_req.getRequestDispatcher("../welcome.html").forward(h_req,h_resp); 
				return;
			}
		} else {
			//如果session为空 就返回登录页面
			//String str = "<script laguage='JavaScript'> alert('你还没登录!请登录!');</script>";
			//h_req.setAttribute("message", str);
			//h_req.getRequestDispatcher("../login.jsp").forward(h_req,h_resp);
			h_resp.sendRedirect("../toquit.jsp");
			return; 
		}
	}
	
	public void init(FilterConfig filterconfig) throws ServletException {
		System.out.println("执行 过滤器的init方法----------------------");
		//初始化时将不进行过滤的页面添加到一个集合里 
		urlList.clear();
		urlList.add("/system/login-doLogin");
		urlList.add("/system/login-doQuit");
		urlList.add("/login.jsp");
		urlList.add("/index.jsp");
		urlList.add("/header.jsp");
		urlList.add("/welcome.jsp");
		urlList.add("/error.jsp");
		urlList.add("/error1.jsp");
		urlList.add("/tologin.jsp");
		urlList.add("/toquit.jsp");
	} 
}

 

  • SSH.rar (3.5 KB)
  • 下载次数: 76
分享到:
评论

相关推荐

    HRMS.rar_HRMS SSH_SSH 管理系统JS_ssh eclipse_ssh sqlserver_人力资源管理

    首先,"HRMS.rar"是一个包含完整源代码的压缩包,用于搭建基于SSH(Struts2、Spring、Hibernate)的企业级人力资源管理系统。SSH是Java Web开发中广泛使用的三大框架,它们各自负责不同的职责:Struts2作为表现层...

    基于J2EE/SSH开发的人力资源管理系统HRMS

    2014最近做好的学期项目hr 带数据 JSP页面 完全能运行 带有完整的libs jar包 J2EE SSH Ajax easyUI 带有上传功能 自动菜单生成 登录验证 员工管理 薪资管理 培训管理 招聘管理 等等

    数据库+hrms oracle数据库

    测试数据用于模拟真实环境,验证系统功能和性能,而配置文件则包含数据库连接信息、系统设置等,确保HRMS能够正确连接到Oracle数据库。 总之,Oracle数据库在HRMS系统中的作用不可忽视,它为高效的人力资源管理提供...

    HRMS.zip_HRMS_hrms jsp_jsp and hrms_project

    4. **配置文件**:如`web.xml`,这是Web应用的部署描述符,定义了Servlet的映射、初始化参数、过滤器和监听器等。 5. **数据库脚本**:如`hrms.sql`,用于创建和初始化数据库表结构。 6. **资源文件**:如图片、...

    SSM_HRMS-master.zip

    SSM_HRMS-master.zip是一个压缩包文件,其中包含了基于Spring、Spring MVC和MyBatis框架开发的一个完整的HRMS(人力资源管理系统)项目。这个系统主要实现了CRUD(创建、读取、更新、删除)功能,是Java Web开发中的...

    hrms.zip_HRMS

    【标题】"HRMS.zip_HRMS"是一个与人力资源管理系统(HRMS)相关的压缩文件,其中包含了关于项目的信息,特别是涉及到使用JSP(JavaServer Pages)进行开发的元素。JSP是一种动态网页技术,允许开发者在HTML代码中...

    基于JAVA语言和SSH框架的人力资源管理系统的简易设计

    在实现阶段,我们首先配置SSH框架,设置Struts2的配置文件,定义Action类来处理请求。然后,利用Spring管理Bean,定义服务接口和服务实现,进行业务逻辑处理。最后,通过Hibernate操作数据库,完成数据的增删改查。 ...

    hrms.rar_jsp and hrms

    2. 权限管理:设置不同级别的用户权限,防止未授权访问或修改数据。 3. 数据备份与恢复策略:定期备份数据库,以应对意外情况,同时利用ldf日志文件进行事务回滚或灾难恢复。 4. 性能优化:如使用索引提高查询速度,...

    HRMS.rar_HRMS

    本压缩包文件"HRMS.rar_HRMS"包含了有关HRMS的基本信息和可能的源代码或文档,虽然描述中提到内容可能不够完善,但仍然可以作为我们学习和理解HRMS的一个起点。 HRMS系统通常包括以下几个核心功能模块: 1. 员工...

    人力资源管理系统HRMS

    《深入解析:人力资源管理系统HRMS的设计与实现》 在当今的企业运营中,人力资源管理系统的角色愈发重要,它已经成为企业管理的核心工具之一。本文将基于“人力资源管理系统HRMS”的设计与实现,详细探讨类图、用例...

    HRMS.zip_HRMS

    4. **权限与安全**:HRMS系统需要具备严格的权限控制,以保护敏感信息。通过角色和权限分配,不同级别的员工可以访问不同的功能模块,确保信息安全。同时,系统应具备加密传输、防止SQL注入等安全措施,保障数据安全...

    HRMS.rar_HRMS_人力资源_明日

    4. 配置文件:存储系统设置和参数。 5. 文档:包括用户手册、开发者指南、安装教程等,帮助用户理解和使用系统。 6. 图像和资源文件:如logo、图标等视觉元素。 7. 测试脚本和数据:用于系统测试,确保功能的正确性...

    GTC.HRMS-9.0考勤软件使用说明书

    《GTC.HRMS-9.0考勤软件使用说明书》是针对GTC.HRMS 9.0版本考勤管理系统的详细指南,旨在帮助用户理解并熟练掌握该软件的各项功能和操作流程。本说明书采用HTML和Word两种格式提供,方便用户在不同设备和环境下阅读...

    HRMS.rar_HRms一_工资 统计_财务

    "HRMS.CON"可能代表系统配置文件,用于设置系统参数;"msword9.cpp"和"FileRecord.cpp"可能涉及系统文档处理和记录存储功能;"TimeCardList.cpp"则可能与考勤记录和工时统计有关,这些都是HRMS系统不可或缺的组件。 ...

    HRMS.zip_HRMS_企业管理

    同时,通过权限设置,确保信息安全,避免数据泄露。 其次,HRMS在薪资管理方面具有显著优势。系统可以自动计算员工的工资、奖金、福利等,根据预设的规则进行调整,减少了人为错误,提高了薪酬计算的准确性。同时,...

    一個HRMS系統實例

    安装"Setup"文件的过程通常包括以下步骤:下载安装包,双击运行,按照向导提示进行安装,设置服务器配置,数据库连接,最后完成初始化设置。在安装过程中,确保计算机符合系统需求,如操作系统版本、内存大小和硬盘...

    HRMS系统管理平台源码

    java开发的HRMS(Human Resource Management System)是人力资源管理的一个发展方向,人力资源管理系统从系统学理论的角度对人力资源管理进行阐释,注重在人力资源管理的各个方面的系统规划、设计运作,并在企业管理...

    HRMS人力资源管理系统

    8. **权限管理**:设置不同级别的访问权限,确保敏感信息的安全。例如,员工只能查看自己的信息,而管理层则可以查看整个团队的数据。 在本Demo中,尽管样式设计简单,但其功能完整性可以提供基本的人力资源管理...

Global site tag (gtag.js) - Google Analytics