现在的位置: 首页 > 综合 > 正文

Spring 2.0 XML schema-based configuration

2013年09月09日 ⁄ 综合 ⁄ 共 2584字 ⁄ 字号 评论关闭

摘自: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>

 

 

 

 

 

 

 

 

 

 

 

 

抱歉!评论已关闭.