Spring 2.0 RC4 釋出:關於 DTD/Schema 重新命名、Scope 屬性的注意事項

工程 | Colin Sampaleanu | 2006年9月17日 | ...

Spring Framework 2.0 RC4 已釋出。這是 Spring 2.0 最終版本之前的最後一個候選釋出版,您可以從釋出公告本身以及JIRA 問題列表瞭解有關此版本的更多資訊,以獲取此版本中更改的完整列表。

可能最重要的一點是,此版本為2.0 DTD和Schema(XSD)引入了帶版本號的檔案/位置名稱。這是必要的,因為XML bean定義格式在2.0中得到了顯著增強,但1.2.x使用者仍然需要能夠引用1.2.8 DTD。以下是使用2.0“beans”Schema的示例(2.0還附帶了許多其他新的Schema,代表各種特殊的名稱空間


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="
                http://www.springframework.org/schema/beans
                http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

     <!-- Define your beans here -->

</beans> 

以下是使用2.0 DTD的示例(只有一個DTD,您必須切換到Schema才能獲得各種新的名稱空間)


<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
        "http://www.springframework.org/dtd/spring-beans-2.0.dtd">

<beans>

    <!-- Define your beans here -->

</beans>

需要注意的一件重要事情是:任何現有的1.2.x bean定義檔案都應繼續按原樣工作,因為它指向1.2 DTD,並且所有功能仍然受支援。要獲得2.0 DTD或Schema支援的2.0新功能,您需要按照上述示例更新您的定義檔案。您還必須從使用singleton屬性定義bean作用域切換到使用新的scope屬性。舊的singletonscope屬性存在重疊,並且在新DTD/Schema定義中完全刪除singleton屬性被認為是可接受的,因為受影響的人群是那些無論如何都已經在更改其bean定義檔案以指向新DTD和Schema的人。因此,如果您所做的只是修改現有bean定義檔案以指向新的DTD或Schema,而沒有修復任何singleton的使用,您收到驗證錯誤!

新的帶版本號的DTD和Schema已上傳並在線可用。儘管Spring本身透過實體解析器在其自己的jar檔案(來自classpath)中找到定義,但這些定義對於XML編輯器和其他外部使用者是必需的。

獲取 Spring 新聞通訊

透過 Spring 新聞通訊保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有