gpt4 book ai didi

java - 如何以编程方式配置@ComponentScan?

转载 作者:行者123 更新时间:2023-11-30 08:21:37 26 4
gpt4 key购买 nike

我想找到以编程方式设置“@componentScan”的“basepackages”的方法。

我有这样的东西:

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "cl.pagefoo.controller")
public class MyConfig extends WebMvcConfigurerAdapter{
...
}

我想要这样的东西:

class foo extends Something{
void init(SomethingContext sc) throws Exception{
sc.setComponentScan("cl.pagefoo.controller");
}
}

我想找到这个允许在运行时配置 Controller 包的理论“东西”类。

最佳答案

您可以使用 WebApplicationInitializer 以编程方式创建应用程序上下文。

public class Initializer implements WebApplicationInitializer {

public void onStartup(ServletContext servletContext)
throws ServletException {
AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();

ctx.scan("com.package.name");
//the rest of initialization
}

}

这是配置 Web 应用程序的另一种方法,因此您不再需要 web.xml

更多阅读: http://www.intertech.com/Blog/how-to-use-springs-webapplicationinitializer/

关于java - 如何以编程方式配置@ComponentScan?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25070943/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com