Spring 2.1 添加了一个新的 context 的 Schema 命名空间,该命名空间对注释驱动、属性文件引入、加载期织入等功能提供了便捷的配置。我们知道注释本身是不会做任何事情的,它仅提供元数据信息。要使元数据信息真正起作用,必须让负责处理这些元数据的处理器工作起来。
而我们前面所介绍的AutowiredAnnotationBeanPostProcessor和CommonAnnotationBeanPostProcessor就是处理这些注释元数据的处理器。但是直接在 Spring 配置文件中定义这些 Bean 显得比较笨拙。Spring 为我们提供了一种方便的注册这些BeanPostProcessor的方式,这就是 <context:annotation-config/>。请看下面的配置:
调整 beans.xml 配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<context:annotation-config/>
<bean id="boss" class="com.baobaotao.Boss"/>
<bean id="office" class="com.baobaotao.Office">
<property name="officeNo" value="001"/>
</bean>
<bean id="car" class="com.baobaotao.Car" scope="singleton">
<property name="brand" value=" 红旗 CA72"/>
<property name="price" value="2000"/>
</bean>
</beans>
<context:annotationconfig/> 将隐式地向 Spring 容器注册AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、PersistenceAnnotationBeanPostProcessor以及equiredAnnotationBeanPostProcessor这 4 个 BeanPostProcessor。
在配置文件中使用 context 命名空间之前,必须在 <beans> 元素中声明 context 命名空间。
参考:http://hi.baidu.com/blue1255/item/ded2dc155c88b20ad0d66d85
分享到:
相关推荐
在这个主题中,我们将深入探讨`<context:annotation-config>`与`<context:component-scan>`的区别,事务管理器的配置,以及Spring开发环境的选择和数据源的配置。 1. `<context:annotation-config>`和`<context:...
在Spring中,包扫描是通过`<context:component-scan>`标签实现的,该标签位于XML配置文件中。这个标签告诉Spring去指定的包及其子包下查找标记为`@Component`、`@Service`、`@Repository`和`@Controller`的类,这些...
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> <context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/> ...
【Spring Boot 整合 JSP 页面】在传统的 Spring MVC 项目中,配置访问 JSP 页面相对简单,然而,Spring Boot 采用内置的 Servlet 容器(如Tomcat),默认并不支持 JSP,主要是因为 Spring Boot 强调快速开发,简化...
<param-value>/WEB-INF/spring-mvc-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> ... <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-...
<context:annotation-config /> ``` 这将隐式地向 Spring 容器注册 `AutowiredAnnotationBeanPostProcessor`、`CommonAnnotationBeanPostProcessor`、`PersistenceAnnotationBeanPostProcessor` 和 `...
<bean id="logbackConfigLocation" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <property name="targetObject" value="java.lang.System" /> <property name="targetMethod" ...
6. **创建Spring配置文件**:在WEB-INF下创建spring-mvc-config.xml,配置Spring MVC的bean。例如: ```xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=...
<groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.20</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api...
-- 配置项 --> </plug-in> <!-- 配置Action --> <action path="/yourAction" type="com.yourpackage.YourAction" input="/login.jsp" name="yourFormName" scope="request" validate="true"> <forward name=...
这里通过`<context:property-placeholder>`加载了`dbconfig.properties`中的配置项,确保了数据库连接参数的外部化管理。 ```xml <context:property-placeholder location="classpath:dbconfig.properties"/> ...
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/config/...
<context:annotation-config /> <context:component-scan base-package="com.bjsxt"/> ``` 以上就是Oracle连接池在S2SH框架中的配置过程,涵盖了项目环境、依赖包、Spring配置文件中的SessionFactory配置、数据源、...
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> ``` 2. **Spring MVC Dispatcher Servlet**:如果使用Spring MVC,还需要配置`DispatcherServlet`来处理...
<artifactId>spring-context</artifactId> <version>5.x.x.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.x.x....
使用 `<context:annotation-config />` 可以方便地、一次性的声明这四个 BeanPostProcessor。 传统上,我们使用 XML 文件来配置 Bean 和 Bean 之间的依赖关系。但是,使用基于注释的配置可以简化配置过程,提高开发...