Java 什么';这是<;上下文:排除筛选器>;当应用于Spring MVC控制器包配置时?

Java 什么';这是<;上下文:排除筛选器>;当应用于Spring MVC控制器包配置时?,java,spring,spring-mvc,Java,Spring,Spring Mvc,它将告诉Spring排除com.myapp.controller包和子包中可能存在的组件(带Spring注释的类)。可能有负责此web应用的控制器不希望被激活 位于com.myapp下的其余组件将被加载和设置。这是在@Luciano所说的基础上添加的,对于Spring MVC应用程序来说,一个典型的好做法是保持Spring核心上下文配置(由加载)和表示层配置(通过加载)分开。在这个特定的实例中,您显示的是核心上下文文件,它显式地排除了控制器,控制器很可能是与您的DispatcherServlet

它将告诉Spring排除com.myapp.controller包和子包中可能存在的组件(带Spring注释的类)。可能有负责此web应用的控制器不希望被激活


位于com.myapp下的其余组件将被加载和设置。

这是在@Luciano所说的基础上添加的,对于Spring MVC应用程序来说,一个典型的好做法是保持Spring核心上下文配置(由加载)和表示层配置(通过加载)分开。在这个特定的实例中,您显示的是核心上下文文件,它显式地排除了控制器,控制器很可能是与您的DispatcherServlet加载的Spring配置文件一起显式定义的

<context:exclude-filter type="aspectj" expression="com.myapp.controller.*"/>
<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>