Это отсутствовало некоторое время, таким образом, я задаюсь вопросом, используют ли люди p XML пространство имен в их конфигурационных файлах Spring. Действительно ли это - полезный ярлык? Действительно ли это - хорошая идея, которая закончилась в корзине?
Где сообщество Java в основном стоит?
Я использую его в каждом проекте Spring, к которому я когда-либо прикасался. Я бы предположил, что в моей нынешней команде есть база данных по крайней мере с 50 различными файлами Spring, и в каждом из них используется пространство имен p
. Это намного меньше опечаток, и, возможно, более читабельно. Например:
<bean id="fry" class="com.fox">
<property name="leela" value="fracas" />
<property name="hawking" ref="panucci" />
<property name="bender">
<ref local="uhura" />
</property>
</bean>
Можно гораздо проще написать как
<bean id="fry" class="com.fox"
p:leela="fracas"
p:hawking-ref="panucci"
p:bender-ref="uhura" />
Единственный недостаток - вы теряете возможность использовать семантику local
, хотя, честно говоря, я не так часто ее использую.
Eclipse's Spring IDE поддерживает пространство имен p и автозаполняет имена свойств для бобов. Вы даже можете щелкнуть по имени свойства модификатором, чтобы перейти к его объявлению, и я полагаю, что инструменты рефакторинга также поддерживают изменение имен свойств (даже если они в нотации p-пространства имен).
Команде может потребоваться некоторое время, чтобы привыкнуть к этому, но после того, как они освоят это, они будут благодарить вас за то, что вы сделали файлы намного более краткими.
Я никогда не использовал его, хотя помню, что читал о нем, когда он был выпущен, и недавно обнаружил его существование при просмотре справочной документации Spring, но даже после этого я все еще обнаружил, что пишу свойства в полный.
Звучит как хорошая идея, но я никогда не могу вспомнить URL схемы (поскольку я обычно копирую и вставляю их из других контекстов Spring, которые не используют пространство имен p:)
Я использую IDEA, поэтому может быть, в нем есть какая-нибудь умная функция импорта / добавления пространства имен?