如何在没有whitelabel错误的情况下使用@RequestMapping或@GetMapping注释?

时间:2019-01-25 02:37:16

标签: spring spring-boot

我使用@RequestMapping或@GetMapping进行路由。 但是,它不起作用。它使whitelabel error page。 (弹簧靴)

我的Application.java

@RestController
@SpringBootApplication
public class SmDemoApplication {

@RequestMapping("/")
String home() {
    return "Hello World! smDemo 111";
}


public static void main(String[] args) {
    SpringApplication.run(SmDemoApplication.class, args);
}

}

控制器是

@RestController
public class WebRestController {

    //@GetMapping("/hello")
    @RequestMapping(value="/hello", method=RequestMethod.GET)
    public String hello() {
        return "Hello World! 222";
    }

}

http://localhost:8080很好。 但是http://localhost:8080/hello会使白标错误! 我的代码有什么问题? (我使用spring starter project制作了项目)

1 个答案:

答案 0 :(得分:0)

Springboot从主类的包和子包中读取其构造型bean,控制器和配置,(直到定义@ComponentScan以读取其他包)我觉得您的项目主类位于与控制器不同的另一个包中,即Controller与控制器不在同一个包中或位于Main class所在的子包中。 例如,如果您的主软件包在

com.xyz.abc
|_ SmDemoApplication

保持控制器,其他bean和 com.xyz.abc包中的配置

com.xyz.abc
    |_WebRestController

或子包(如

com.xyz.abc.controllers
|_WebRestController