`
IT阿狸
  • 浏览: 67144 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JavaEE中的访问控制

 
阅读更多

在过滤器Filter中:

 

package filter;

import java.io.IOException;
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.HttpSession;
import org.apache.log4j.Logger;
import entity.Users;

/**
 * 访问控制
 * @author miao
 *
 */
public class AuthenticationFilter implements Filter {
	
	// Log4j,记录日志
	private static Logger log = Logger.getLogger(AuthenticationFilter.class);

	public void destroy() {
		
	}

	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
		throws IOException, ServletException {
		HttpServletRequest req = (HttpServletRequest) request;
		String path = req.getServletPath();
		//如下地址不用经过过滤器
		if (path.endsWith("/Login") || path.endsWith("/login.jsp") || path.endsWith(".css") || path.endsWith(".js")) {
			chain.doFilter(request, response);
		} else {
			HttpSession session = req.getSession();
			Users user = (Users) session.getAttribute("loginUser");
			if (user == null) {
				log.debug("用户在会话中不存在");
				req.getRequestDispatcher("login.jsp").forward(request, response);
			} else {
				chain.doFilter(request, response);
			}
		}
	}

	public void init(FilterConfig config) throws ServletException {
		
	}	
	
}

 

 

在web.xml配置文件中:

 

<filter>
  	<display-name>访问控制</display-name>
  	<filter-name>AuthenticationFilter</filter-name>
  	<filter-class>filter.AuthenticationFilter</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>AuthenticationFilter</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>

 

 

分享到:
评论

相关推荐

    javaee中文API.zip

    这个“javaee中文API.zip”压缩包很可能是包含了JavaEE平台中各个组件的中文版API文档。 JavaEE API文档是开发者的重要参考资料,它详细列出了JavaEE各组件的接口、类、方法以及使用示例,帮助开发者理解如何与这些...

    JavaEE期末答辩总结.zip

    JavaEE期末答辩总结 本资源摘要信息主要涉及JavaEE...本资源摘要信息涵盖了JavaEE期末答辩总结中的主要内容,包括用户登录验证、持久对象层、数据访问层、业务逻辑层、Web表现层、登陆验证和控制反转(IOC)等内容。

    javaEE7与javaSE6中文chm文档

    它提供了一系列API和服务,用于构建分布式、多层的企业系统,包括Web服务、事务处理、数据访问、并发控制等。相对的,Java SE 6(Java Standard Edition 6)则是Java的桌面和服务器端运行环境,提供了基础的Java编程...

    JavaEE期末复习模拟题

    9. **WS(Web Services)**:JavaEE支持创建和消费Web服务,如SOAP(简单对象访问协议)和RESTful服务,以便不同系统之间进行通信。 10. **Filter和Listener**:在JavaEE中,Filter用于拦截和处理HTTP请求,而...

    JAVAEE中文版(最新)

    它通常用于定位和访问JavaEE应用中的资源,如EJB、数据源等。 6. **JTA(Java Transaction API)**:JTA提供了分布式事务处理的标准,确保在多资源操作中的数据一致性。 7. **JMS(Java Message Service)**:JMS...

    JAVAEE基础教程实例

    Java Message Service(JMS)是JavaEE中的一个标准接口,用于在分布式系统中发送和接收消息。通过JMS,应用可以实现异步通信,提高系统的可扩展性和可靠性。教程会讲解如何配置JMS提供者,创建生产者和消费者,以及...

    javaee_src.zip

    通过解压并分析这个JavaEE Src.zip,开发者可以深入理解JavaEE的架构和工作原理,学习如何使用JavaEE API创建动态Web项目、数据库连接、事务管理、会话管理、安全控制等各种功能。此外,对于初学者,这也能提供一个...

    北大青鸟 JavaEE概述PPt

    学习JavaEE的原因在于,传统的C/S(客户端/服务器)架构在面对复杂的业务需求和大规模用户访问时存在诸多挑战,比如维护困难、扩展性差等问题。而B/S(浏览器/服务器)系统,即JavaEE的主要应用场景,具有更好的可...

    JavaEE-图书管理系统.zip

    在JavaEE中,Servlet或JSF的Managed Beans通常扮演控制器的角色,它们处理HTTP请求,转发到相应的视图或调用模型方法。 4. **数据库连接与持久化**:为了存储图书信息,系统可能使用了JDBC(Java Database ...

    javaee编写小bbs

    同时,权限管理对于区分普通用户和管理员的操作权限至关重要,这可以通过EJB的Security角色和方法级别的访问控制来实现。 4. **模型-视图-控制器(MVC)架构** MVC模式是JavaEE开发中的常用设计模式,它将业务逻辑...

    毕业JavaEE设计说明书

    通过以上知识点的学习和实践,作者在《毕业JavaEE设计说明书》中可能展示了如何运用这些技术解决实际问题,比如构建一个完整的B/S系统,包括用户登录、权限控制、数据操作、事务管理、异步任务处理等多个模块。...

    个人博客网站,javaEE

    SSH,即Struts、Spring和Hibernate,是JavaEE开发中常用的三大开源框架,它们各自负责不同的职责,共同构成了高效的企业级应用解决方案。 1. **Struts**:这是一个基于MVC(Model-View-Controller)设计模式的Java ...

    javaEE 课件

    9. **安全**:JavaEE提供了多种安全机制,包括角色为基础的访问控制(RBAC)、SSL/TLS加密、JAAS(Java Authentication and Authorization Service)等,保障应用的安全性。 10. **分布式服务**:JavaEE支持JMS...

    javaEE中SSH框架jar包.zip

    JavaEE中的SSH框架,全称为Struts2、Spring和Hibernate,是企业级Web应用程序开发的常用技术栈。这个“javaEE中SSH框架jar包.zip”压缩文件包含了在MyEclipse或Eclipse环境下搭建SSH框架所必需的基础库。下面将详细...

    javaee的杂乱笔记

    MVC架构模式是JavaEE中非常重要的一个概念,主要用于构建清晰且可维护的应用程序。 - **Model(模型)**:是应用程序的核心组件,负责处理应用程序的数据逻辑。它直接与数据库交互,执行所有业务规则并进行数据处理...

    javaee教材ppt课件

    JavaEE是Java企业版(Java Enterprise Edition)...同时,这些课件可能还会涉及如何使用IDE(如Eclipse或IntelliJ IDEA)、版本控制系统(如Git)以及如何部署和测试JavaEE应用等内容,以提供一个完整的开发流程介绍。

    javaee5源代码

    5. **JSF(JavaServer Faces)**:JSF是一种MVC(模型-视图-控制器)架构的UI框架,JavaEE 5包含JSF 1.2,提供了一套用于构建用户界面的组件和事件处理机制。 6. **JMS(Java Message Service)**:JMS是JavaEE的...

    JavaEE在线考试系统

    2. Servlet:JavaEE中的控制器,负责接收请求,调用业务逻辑,然后返回响应。Servlet通常用于处理HTTP请求,管理会话状态等。 3. EJB:提供了一种面向对象的方式来实现分布式组件,包括Session Beans(处理业务逻辑...

    javaee练习

    7. **CDI(Contexts and Dependency Injection)**:CDI是JavaEE中的依赖注入框架,用于管理对象的生命周期和依赖关系,提高代码的可测试性和可维护性。 8. **JPA(Java Persistence API)**:JPA是JavaEE中用于...

    javaEE简单MVC模式案例

    在JavaEE中,控制器可以由Servlet或Filter实现。例如,一个名为`UserController`的Servlet可能会处理用户的注册请求,调用`UserModel`完成注册操作,然后重定向到一个新的JSP页面显示注册成功信息。 4. **MVC模式的...

Global site tag (gtag.js) - Google Analytics