Какова цельприменительно к конфигурации пакета контроллера Spring MVC? - PullRequest
3 голосов
/ 30 июня 2011
<context:exclude-filter type="aspectj" expression="com.myapp.controller.*"/>

Какова цель строки выше в файле applicationContext.xml ниже, который используется для настройки веб-приложения Spring MVC?

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    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">

    <context:annotation-config />
    <context:component-scan base-package="com.myapp">
        <context:exclude-filter type="aspectj" expression="com.myapp.controller.*"/>
    </context:component-scan>

    <import resource="applicationContext-data.xml" />
    <import resource="applicationContext-security.xml" />
    <import resource="applicationContext-service.xml" />

</beans>

Ответы [ 2 ]

3 голосов
/ 30 июня 2011

Это добавление к тому, что сказал @Luciano. Обычно хорошей практикой для приложения Spring-MVC является сохранение конфигурации контекста ядра Spring (загруженной ContextLoaderListener ) и конфигурации уровня представления (загружается через DispatcherServlet ) отдельно.В этом конкретном примере вы показали, что это основной контекстный файл, который явно исключает контроллеры, который, вероятно, был бы явно определен вместе с загруженным в DispatcherServlet файлом конфигурации Spring.

2 голосов
/ 30 июня 2011

Он сообщит Spring об исключении компонентов (аннотированных классов Spring), которые могут присутствовать в пакете и подпакетах com.myapp.controller . Возможно, существуют контроллеры, которые ответственные за это веб-приложение не хотят активировать.

Остальные компоненты, расположенные в com.myapp , будут загружены и установлены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...