我是新手。我尝试使用上下文:组件扫描来扫描我的包,如
<context:component-scan base-package="org.example">
然而,这似乎非常耗时,需要2分钟以上。有没有办法改善其表现
答案 0 :(得分:3)
如果你有很多课程,那么花很长时间是正常的。您很可能还会扫描一些不应扫描的类。您可以通过仅扫描所需的包来优化它。例如,如果你有注释的控制器,你只能扫描包含它们的包。 <context:component-scan base-package="org.example.web.controller">
。
答案 1 :(得分:3)
您还可以使用<context:include-filter />
元素中的<context:exclude-filter />
和<context:component-scan />
元素来进一步限制扫描范围。
答案 2 :(得分:0)
您是否正在使用Spring MVC构建应用程序?
大多数开发人员错误地通过在application-context和* -dispatcher-servlet.xml中扫描相同的东西来加载bean两次。
考虑到加载,在web.xml中,您必须使用contextloaderlistener加载一个上下文并声明一个SpringDispatcher servlet。
只需确保您只在* -servlet.xml文件中加载控制器bean。
您的服务器层(服务和dao类)应该从您通过contextloaderlistener加载的文件中加载。
与Jukka提到的一样,您可以通过在application-context.xml中对@Controller注释使用排除过滤器来避免这种情况