gpt4 book ai didi

java - 从 XML 到 Java 的 Spring 配置不起作用

转载 作者:行者123 更新时间:2023-12-03 03:29:52 24 4
gpt4 key购买 nike

我似乎无法让简单的 Spring 应用程序与 JavaConfig 一起使用。

public class WebApp extends AbstractAnnotationConfigDispatcherServletInitializer {

private static final Logger logger = Logger.getLogger(WebApp.class);

@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[0];
}

@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[]{ WebAppConfig.class };
}

@Override
protected String[] getServletMappings() {
return new String[]{ "/" };
}

@Override
public void onStartup(ServletContext servletContext) throws ServletException {
logger.debug("onStartup");
super.onStartup(servletContext);//MUST HAVE
servletContext.setInitParameter("defaultHtmlEscape", "true");
}

@Configuration
@EnableWebMvc
@ComponentScan("com.doge.controller")
public static class WebAppConfig extends WebMvcConfigurerAdapter {
}
}

和 Controller :

package com.doge.controller;

@RestController
public class HelloController {

@RequestMapping("/")
public String sayHello() {
System.out.println("something");
return "index";
}
}

我总是在“localhost:8080/Build”或“localhost:8080”上得到 404。没有记录或打印任何内容,只是“信息:服务器在 538 毫秒内启动”。

最佳答案

初始化 Spring Web 应用程序的选项很少。最简单的如下:

public class SpringAnnotationWebInitializer extends AbstractContextLoaderInitializer {

@Override
protected WebApplicationContext createRootApplicationContext() {
AnnotationConfigWebApplicationContext applicationContext =
new AnnotationConfigWebApplicationContext();
applicationContext.register(WebAppConfig.class);
return applicationContext;
}

}

其他选项可以在这里找到:http://www.kubrynski.com/2014/01/understanding-spring-web-initialization.html

关于java - 从 XML 到 Java 的 Spring 配置不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21692326/

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