首先要在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;
分享到:
相关推荐
2. **Filter**: 同样,可以在Filter的init()方法中获取ApplicationContext,或者通过ServletContextAware接口,将Spring上下文注册到ServletContext,然后在doFilter()方法中使用。 3. **Listener**: 在监听器的...
这通常适用于需要在特定请求处理中使用Spring Bean的情况。例如,你可以创建一个`MySpringServlet`,并在`init`方法中加载Spring配置: ```java public class MySpringServlet extends HttpServlet { private ...
Spring 和 Spring MVC 是Java开发中广泛使用的两大框架,它们为构建高效、可维护的企业级应用程序提供了强大的支持。这些jar包是实现Spring和Spring MVC功能的基础组件,下面将逐一解析每个jar包及其在整体架构中的...
Spring 其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。 外部依赖Commons Logging, (Log4J)。 spring-beans.jar(必须):这 个jar 文件是所有应用都要...
面向抽象编程是一种设计原则,强调在代码中使用接口或抽象类,而不是具体实现类。这使得系统更具有灵活性,易于扩展和维护。在Spring框架中,我们通常定义服务接口,并在配置文件中指定其实现类,这样可以在不修改...
- Struts处理中文乱码的方法:通常需要在Filter中设置字符编码。 - Struts中Action与Tag的区别:Action是业务逻辑处理,而Tag是视图展示辅助。 - Hibernate的乐观锁实现:通过版本字段或时间戳实现。 - ...
这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。 (2) spring-beans.jar 这个jar文件是所有应用都要...
这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。 (2) spring-beans.jar 这个jar文件是所有应用都要...
- 创建Server对象:在Spring配置文件中定义一个`org.eclipse.jetty.server.Server`bean,设置端口和其他服务器属性。 - 添加Servlet容器:创建`org.eclipse.jetty.servlet.ServletContextHandler`对象,并设置其上...
Spring框架是中国著名的Java开发者Rod Johnson在其著作《Expert One-on-One J2EE Design and Development》中提出的,它旨在简化企业级应用开发,通过依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-...
4. **bean的生命周期管理**:Spring管理的bean有其特定的生命周期,包括初始化、使用和销毁阶段。开发者可以通过定义初始化方法、销毁方法,或者使用BeanPostProcessor接口参与到bean的生命周期管理中。 5. **数据...
3. **spring-context.jar**:在核心和Bean模块之上,提供了更高级的服务,如AOP(Aspect Oriented Programming,面向切面编程),事件发布,国际化支持,以及资源访问。它扩展了ApplicationContext接口,使其能够...
例如,`.project`文件包含了项目的元数据,`.settings`目录存储了项目的特定配置,`.myeclipse`可能与MyEclipse的特性相关,而`.hibernateSynchronizer3`可能表明项目中使用了Hibernate作为持久层框架。 3. `src`:...
通过在struts.xml配置文件中声明Action类,并指定其Spring bean的ID,Struts2可以在执行请求时找到并使用由Spring管理的Action实例。 在创建这个入门示例时,首先需要在MyEclipse中创建一个新的Dynamic Web Project...
2. **全注解配置**:在Spring框架中,可以使用注解替代XML配置来声明bean及其依赖。常见的注解包括`@Component`(定义组件),`@Service`(业务层服务),`@Repository`(数据访问层),`@Controller`(控制器层),...
在本项目中,Spring负责管理Bean的生命周期,以及事务的控制。 3. **MyBatis** MyBatis将SQL语句写在Mapper XML文件中,与Java代码分离,使得SQL更加灵活且易于维护。它支持动态SQL,可以根据条件动态生成执行的...
Spring框架是Java应用程序开发中的一个核心库,它提供了一种模块化、可扩展的方式来构建应用程序。Spring框架的主要优点之一就是其模块化的结构,允许开发者仅引入需要的组件,而不是整个框架,从而减小了应用程序的...
- 创建 Shiro 的 Spring Bean:在 Spring 的配置文件中,定义 Shiro 的相关组件为 Bean,如 SecurityManager、Realm 等。 - 配置 Spring 与 Shiro 的交互:使用 Spring 的 `DelegatingFilterProxy` 将 Shiro 的 ...
Spring 3.0 是一个广泛使用的Java框架,主要用于构建企业级的Web应用程序。这个框架以其模块化、松耦合和面向切面编程(AOP)的特性而闻名,极大地简化了开发过程。以下是对给定的Spring 3.0 JAR包的详细解释: 1. ...