摘自:http://static.springsource.org/spring/docs/2.5.x/reference/xsd-config.html
原文是spring framework reference的附录A,介绍XML基于模式的配置
The central motivation for moving to XML Schema based configuration files was to make Spring XML configuration easier. The 'classic' <bean/> -based approach is good, but its generic-nature comes with a price in terms of configuration overhead.
From the Spring IoC containers point-of-view, everything is a bean. That's great news for the Spring IoC container, because if everything is a bean then everything can be treated in the exact same fashion. The same, however, is not true from a developer's point-of-view. The objects defined in a Spring XML configuration file are not all generic, vanilla beans. Usually, each bean requires some degree of specific configuration.
Spring 2.0's new XML Schema-based configuration addresses this issue. The <bean/> element is still present, and if you wanted to, you could continue to write the exact same style of Spring XML configuration using only <bean/> elements. The new XML Schema-based configuration does, however, make Spring XML configuration files substantially clearer to read. In addition, it allows you to express the intent of a bean definition.
The key thing to remember is that the new custom tags work best for infrastructure or integration beans: for example, AOP, collections, transactions, integration with 3rd-party frameworks such as Mule, etc., while the existing bean tags are best suited to application-specific beans, such as DAOs, service layer objects, validators, etc.
一些常用的基于模式的命名空间标签:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p" -----------------参见http://blog.springsource.com/2006/11/25/xml-syntax-sugar-in-spring-20/
xmlns:context="http://www.springframework.org/schema/context" -----------------context schema中的property-placeholder,用于设置 PropertyPlaceholderConfigurer
xmlns:aop="http://www.springframework.org/schema/aop" -----------------AOP
xmlns:tx="http://www.springframework.org/schema/tx" -----------------事务管理
xmlns:util="http://www.springframework.org/schema/util" ------------------工具类
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
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<!-- <bean/> definitions here -->
</bean>