有关Spring MVC组件扫描的问题

时间:2012-10-25 09:08:33

标签: spring spring-mvc

我正在使用组件扫描来扫描所有Controller,Service和DAO类。如果我将我的服务和DAO接口与实现者放在同一个包中,这是否会导致组件扫描过程变慢(它会慢两倍)?它是否也扫描子包?

1 个答案:

答案 0 :(得分:6)

是的,它会慢一些。但是,在设计包布局时,不应将此视为一个因素。让架构驱动类的放置,而不是一些任意的框架要求和特性。

如果你的应用程序真的很大并且你想减少自举时间(参见4.10.3 Using filters to customize scanning),你也可以过滤掉一些类/模式:

<context:component-scan base-package="org.example">
  <context:include-filter type="regex" expression=".*Stub.*Repository"/>
  <context:exclude-filter type="annotation"
                          expression="org.springframework.stereotype.Repository"/>
</context:component-scan>

是的,它会扫描子包。