`
mydisk
  • 浏览: 10902 次
  • 性别: Icon_minigender_1
  • 来自: 西安
最近访客 更多访客>>
社区版块
存档分类
最新评论

Filter中访问Spring Bean

 
阅读更多

一、DelegatingFilterProxy

在Spring中提供一过滤器DelegatingFilterProxy,这个过滤器里没有过滤器的任何逻辑,DelegatingFilterProxy做的事情是代理Filter的方法,从application context里获得bean。这让bean可以获得spring web application context的生命周期支持,使配置较为轻便。 bean必须实现javax.servlet.Filter接口,它必须和filter-name里定义的名称是一样的。

<filter>

     <filter-name>myFilter</filter-name> 

    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>

</filter>

<filter-mapping> 

    <filter-name>myFilter</filter-name>

    <url-pattern>/*</url-pattern>

</filter-mapping>


二、DelegatingFilterProxy还提供一属性,targetBeanName

 

<filter>

     <filter-name>myFilter</filter-name> 

    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>

    <init-param>

        <param-name>targetBeanName</param-name>

        <param-value>自定义FilterBean的名字</param-value>

    </init-param>

 

</filter>

<filter-mapping> 

    <filter-name>myFilter</filter-name>

    <url-pattern>/*</url-pattern>

</filter-mapping>

本文参考:http://www.family168.com/tutorial/springsecurity3/html/web-infrastructure.html

分享到:
评论

相关推荐

    Spring 管理filter 和servlet

    Spring通过其IoC容器,提供了更高级别的依赖管理和生命周期管理,使得Filter和Servlet能够更加灵活地与应用中的其他bean交互,避免了硬编码和降低了耦合度。 #### 实现步骤详解 1. **定义Filter或Servlet Bean** ...

    Spring学习笔记(9)----让Spring自动扫描和管理Bean

    除了基本的`@Component`家族,Spring还提供了一些高级注解,如`@Scope`用于定义Bean的作用域,`@Lazy`用于延迟初始化Bean,`@Qualifier`用于在多个相同类型的Bean中指定特定的一个。 ### **总结** Spring的自动...

    web.xml文件中配置(servlet, spring, filter, listenr)的加载顺序

    ### web.xml文件中配置(servlet, spring, filter, listener)的加载顺序 在Java Web应用开发中,`web.xml`文件是整个Web应用程序的核心配置文件之一,它定义了Servlet容器如何启动、初始化以及配置各个组件如...

    spring MVC所需jar包和filter的配置

    - `DelegatingFilterProxy`:Spring提供的Filter,用于代理Spring的Bean,例如Spring Security的Filter链。 - 编写自定义Filter:扩展`javax.servlet.Filter`类,实现`doFilter`方法,然后在`web.xml`中配置。 3....

    Spring security

    Spring Security 提供了权限表达式语言,允许在访问控制策略中使用类似 `"hasRole('ROLE_ADMIN')"` 或 `"isAuthenticated()"` 的表达式。这些表达式可以在方法安全注解或访问决策器中使用,实现细粒度的权限控制。 ...

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

    在Spring框架中,如果需要在ActionForm中注入其他对象,例如数据库访问层的服务,可能会遇到问题,因为ActionForm通常是非Spring管理的bean。 针对这个问题,一种解决办法是将注入的属性声明为静态,并修改setter...

    Spring 3 Reference中文

    Spring中bean的范围定义了它的生命周期以及一个bean实例是否对单个请求、会话、整个Web应用可用。 4.6 自定义bean的性质 开发者可以为bean定义生命周期回调方法,以实现初始化和销毁逻辑。另外,还可以通过实现特定...

    Spring,Spring MVC所需的jar包

    2. **spring-context-4.1.5.RELEASE.jar**:Spring上下文模块,提供了与应用程序环境相关的服务,如国际化、事件传播、资源访问以及bean的生命周期管理。它扩展了核心容器(由spring-core和spring-beans组成),增加...

    spring jar 包详解

    - **功能简介**:包含了 Web 应用开发时使用 Spring 框架时所需的核心类,包括自动载入 WebApplicationContext 特性的类、Struts 与 JSF 集成类、文件上传的支持类、Filter 类和大量工具辅助类。 - **应用场景**:...

    shiro整合spring+springmvcjar包

    - 使用Spring的Bean管理,我们可以把Shiro的相关组件(如 Realm、SecurityManager、Filter)配置为Spring Bean,方便管理和依赖注入。 - 在Spring配置文件中定义Shiro的过滤器链,如`FormAuthenticationFilter`、`...

    struts+spring

    3. **配置Spring**:在`applicationContext.xml`文件中,你需要定义你需要的bean,包括业务逻辑层(Service)和数据访问层(DAO)。Spring通过DI管理这些bean的生命周期,并负责初始化和销毁。 4. **Action类与...

    搭建SSH框架需要引入的Struts2包(log4j,spring-web,struts2-spring-plugin)

    对于Struts2和Spring的配置,我们需要在`struts.xml`和`spring-context.xml`文件中进行相应的设置,例如定义Action类、配置Spring Bean以及指定Struts2与Spring的整合方式。同时,确保web.xml文件中配置了...

    spring security 3.0.5中文详解

    - **配置Spring Security Bean**:接下来需要在Spring的配置文件中定义过滤器链以及其他Spring Security组件。 ```xml &lt;beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=...

    struts2和Spring整合需要的jar包

    Struts2会自动从Spring容器中查找并注入Action所需的bean。 通过这样的整合,我们能够实现业务逻辑和视图层的解耦,使代码更加模块化,便于维护和扩展。同时,Spring的IoC和AOP特性也能够更好地支持企业级应用的...

    spring cloud2.0 eureka server spring security配置

    在Spring Cloud 2.0版本中,Eureka Server的配置相比1.x版本确实有了一些显著的变化,尤其是在结合Spring Security进行安全设置时。Spring Cloud Eureka是Netflix Eureka的Spring Boot实现,它为微服务架构提供了...

    Spring MVC 入门实例

    22 &lt;filter-class&gt;org.springframework.web.filter.CharacterEncodingFilter&lt;/filter-class&gt; 23 24 &lt;param-name&gt;encoding 25 &lt;param-value&gt;UTF-8 26 27 &lt;/filter&gt; 28 29 &lt;filter-mapping&gt; 30 &lt;filter-name&gt;...

    spring redis session共享实现步骤

    Spring与Redis结合,可以将用户的Session数据存储在Redis这个中央缓存服务器中,确保所有服务器都能访问到同一份Session数据。 2. **引入依赖**: 首先,你需要在项目的`pom.xml`或`build.gradle`文件中添加Spring...

    Spring4 整合SpringMVC, Hibernate5, SpringSecurity4.2 源码

    1. 如何在Spring配置文件中声明Bean,包括DataSource、SessionFactory、SessionFactoryBean、HibernateTransactionManager等,以实现Spring与Hibernate的整合。 2. 如何使用Spring MVC的注解(如@Controller、@...

    初识 Spring Security - v1.1.pdf

    **Spring Security**是一种广泛应用于Java企业级项目中的安全框架,它基于Spring AOP(面向切面编程)和Servlet过滤器来提供全面的安全解决方案。该框架能够在Web请求级别以及方法调用级别处理身份验证...

Global site tag (gtag.js) - Google Analytics