Spring beans DTD и XMLNS
Когда я создаю проект spring, у меня всегда есть проблема с XLMNS. что такое XMLNS?
что это на самом деле?
<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"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"
И где я могу получить ссылки для них? (ресурс xmlns: xsi и xsi: schemLocation.) есть ли онлайн-руководство для них? Кажется, я не могу их найти.
Примечание
Когда я сказал ссылки, я имел в виду правильные URL-адреса для них.
ОБНОВЛЕНО
Где я могу увидеть пространства имен XML для spring beans, spring Транзакций, spring MVC и т.д.? и его местоположения схемы?
Ответы
Ответ 1
Здесь есть хорошее объяснение:
какая польза от xsi: schemaLocation?
Вот источники документов на xsd config:
http://static.springsource.org/spring/docs/current/spring-framework-reference/html/xsd-config.html
ПРИМЕЧАНИЕ: Spring теперь рекомендует не включать номер версии в xsd, если это не требуется, поэтому вы должны иметь:
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd"
и не:
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
"xmlns" определяет пространство имен для текущего элемента.
"xmlns: aop" определяет пространство имен для элементов в текущем элементе, которые имеют префикс "aop:"
Ответ 2
Эти строки задают пространства имен для вашего XML-документа. В зависимости от того, какие теги вы используете в своем XML файле, вам понадобятся пространства имен наверху (и ссылки на правильные схемы), чтобы XML был действительным.
Например, если вы используете тег <aop/>
в своих определениях bean, вам нужно будет ссылаться на схему aop в верхней части файла: xmlns:aop="http://www.springframework.org/schema/aop"
Если вы не используете этот тег, вы не нужно, чтобы там.
Для любых импортируемых импространств убедитесь, что вы добавили ссылку на схему в теге "xsi: schemaLocation", например: xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
Я бы рекомендовал проверить пример приложения Spring, так как он должен иметь минимальный минимум, необходимый для запуска чего-либо.
Ответ 3
Что касается ответа на "где он документирован", я думаю, что это зависит от проекта. В случае Spring документация проекта содержит ссылку на эту информацию. В качестве примера ознакомьтесь с разделом xsd-config для Spring Framework 3.2.x: Приложение E. Конфигурация на основе схемы XML