`

在Filter中使用Spring Bean Injection

阅读更多

首先要在Spring中注册自己的Filter

 

     <bean id="adminSecurityFilter"       
            class="xxx.xxx.webapp.filter.AdminSecurityFilter" autowire="byName">      
     </bean>
 

 

 

然后在web.xml中定义Filter,并设置为Spring Filter代理

 

    <filter>
    	<description>
    	Only authorized user can visit Admin function</description>
    	<filter-name>adminSecurityFilter</filter-name>
    	<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    </filter> 

 

注意filter-name与在Spring Context中注册的bean id一致

 

最后,就可以在Filter类中自由使用已经在Spring中注册的Bean了

 

AuthorizedUserService authorizedUserService;
 

 

分享到:
评论

相关推荐

    特殊情况(ActionForm,Servlet, Filter, Listener)下Spring如何注入对象

    2. **Filter**: 同样,可以在Filter的init()方法中获取ApplicationContext,或者通过ServletContextAware接口,将Spring上下文注册到ServletContext,然后在doFilter()方法中使用。 3. **Listener**: 在监听器的...

    SSH笔记-web应用下使用Spring

    这通常适用于需要在特定请求处理中使用Spring Bean的情况。例如,你可以创建一个`MySpringServlet`,并在`init`方法中加载Spring配置: ```java public class MySpringServlet extends HttpServlet { private ...

    Spring,Spring MVC所需的jar包

    Spring 和 Spring MVC 是Java开发中广泛使用的两大框架,它们为构建高效、可维护的企业级应用程序提供了强大的支持。这些jar包是实现Spring和Spring MVC功能的基础组件,下面将逐一解析每个jar包及其在整体架构中的...

    spring4.3.9相关jar包

    Spring 其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。 外部依赖Commons Logging, (Log4J)。 spring-beans.jar(必须):这 个jar 文件是所有应用都要...

    Spring的学习笔记

    面向抽象编程是一种设计原则,强调在代码中使用接口或抽象类,而不是具体实现类。这使得系统更具有灵活性,易于扩展和维护。在Spring框架中,我们通常定义服务接口,并在配置文件中指定其实现类,这样可以在不修改...

    spring面试题.doc

    - Struts处理中文乱码的方法:通常需要在Filter中设置字符编码。 - Struts中Action与Tag的区别:Action是业务逻辑处理,而Tag是视图展示辅助。 - Hibernate的乐观锁实现:通过版本字段或时间戳实现。 - ...

    最新最全的spring开发包

    这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。 (2) spring-beans.jar 这个jar文件是所有应用都要...

    Spring 2.5 jar 所有开发包及完整文档及项目开发实例

    这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。 (2) spring-beans.jar 这个jar文件是所有应用都要...

    Spring整合Jetty开发web应用的例程

    - 创建Server对象:在Spring配置文件中定义一个`org.eclipse.jetty.server.Server`bean,设置端口和其他服务器属性。 - 添加Servlet容器:创建`org.eclipse.jetty.servlet.ServletContextHandler`对象,并设置其上...

    Spring2.zip

    Spring框架是中国著名的Java开发者Rod Johnson在其著作《Expert One-on-One J2EE Design and Development》中提出的,它旨在简化企业级应用开发,通过依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-...

    spring2中文手册

    4. **bean的生命周期管理**:Spring管理的bean有其特定的生命周期,包括初始化、使用和销毁阶段。开发者可以通过定义初始化方法、销毁方法,或者使用BeanPostProcessor接口参与到bean的生命周期管理中。 5. **数据...

    Spring3.0.5所有jar包及每个jar包作用说明文档

    3. **spring-context.jar**:在核心和Bean模块之上,提供了更高级的服务,如AOP(Aspect Oriented Programming,面向切面编程),事件发布,国际化支持,以及资源访问。它扩展了ApplicationContext接口,使其能够...

    一个简单的Spring应用例子

    例如,`.project`文件包含了项目的元数据,`.settings`目录存储了项目的特定配置,`.myeclipse`可能与MyEclipse的特性相关,而`.hibernateSynchronizer3`可能表明项目中使用了Hibernate作为持久层框架。 3. `src`:...

    myeclipse+spring+struts2 入门示例

    通过在struts.xml配置文件中声明Action类,并指定其Spring bean的ID,Struts2可以在执行请求时找到并使用由Spring管理的Action实例。 在创建这个入门示例时,首先需要在MyEclipse中创建一个新的Dynamic Web Project...

    Spring全注解project示例 (无web.xml配置)

    2. **全注解配置**:在Spring框架中,可以使用注解替代XML配置来声明bean及其依赖。常见的注解包括`@Component`(定义组件),`@Service`(业务层服务),`@Repository`(数据访问层),`@Controller`(控制器层),...

    springmvc+spring+mybatis

    在本项目中,Spring负责管理Bean的生命周期,以及事务的控制。 3. **MyBatis** MyBatis将SQL语句写在Mapper XML文件中,与Java代码分离,使得SQL更加灵活且易于维护。它支持动态SQL,可以根据条件动态生成执行的...

    spring配置jar包详解

    Spring框架是Java应用程序开发中的一个核心库,它提供了一种模块化、可扩展的方式来构建应用程序。Spring框架的主要优点之一就是其模块化的结构,允许开发者仅引入需要的组件,而不是整个框架,从而减小了应用程序的...

    spring整合shiro登录小例子

    - 创建 Shiro 的 Spring Bean:在 Spring 的配置文件中,定义 Shiro 的相关组件为 Bean,如 SecurityManager、Realm 等。 - 配置 Spring 与 Shiro 的交互:使用 Spring 的 `DelegatingFilterProxy` 将 Shiro 的 ...

    spring3.0 全JAR包

    Spring 3.0 是一个广泛使用的Java框架,主要用于构建企业级的Web应用程序。这个框架以其模块化、松耦合和面向切面编程(AOP)的特性而闻名,极大地简化了开发过程。以下是对给定的Spring 3.0 JAR包的详细解释: 1. ...

Global site tag (gtag.js) - Google Analytics