gpt4 book ai didi

java - @SpringBootApplication 在同一个包中?

转载 作者:搜寻专家 更新时间:2023-11-01 01:50:15 25 4
gpt4 key购买 nike

我写了一个基于 Spring Boot 的应用程序,但是当我将所有类(模型、用 @restController 注释的 Controller )放在 SpringBoot 存在的同一个包中时,它就可以工作了。我的问题是为什么这些类必须在同一个包中?

这是带注释的 Spring Boot 应用程序:

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

这是其余的 Controller :

@RestController
public class PersonController {

@RequestMapping("/Hello")
public String syaHello(@RequestParam(value = "name", defaultValue = "World") String name) {
return "Hello " + name;
} }

最佳答案

因为这是@SpringBootApplication注解的默认行为。更准确地说,组件扫描会检测包中的所有配置和组件以及带有注释的类的所有子包。如果你想让你的类在其他包中,那么你可以在注释中指定那些包或类,并将包作为属性:

@SpringBootApplication(scanBasePackageClasses = {OneClass.class, AnotherClass.class})

然后 Spring 将扫描类 OneClass 和 AnotherClass 的包和子包。

关于java - @SpringBootApplication 在同一个包中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37130111/

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