[英]How can I use a rest controller from a different package in Spring?
这是怎么回事
我正在使用 Java,Springboot 我正在尝试创建一个简单的 API。
我有一个名为Example
的包。 我有两个名为config
和rest
子包。
在 config 是类Application
,这是我的 spring 应用程序。 在休息中是类TheController
这是休息控制器
目前,当我运行应用程序、 Application
并尝试转到其中一个获取映射时,我得到一个白标错误页面。
但是,如果我将theController
移动到config
包中,我不会收到此错误,并且一切顺利。
我试过的
我曾尝试使用导入语句。 com.Example.rest.*
和com.Example.rest.TheController
没有结果。
任何帮助,将不胜感激 :)
在您的应用程序类上添加 @ComponentScan。
package com.example.config;
@SpringBootApplication
@ComponentScan(basePackages = "com.example")
public class SpringBootComponentScanApp {
}
我个人认为将您的配置放在子包“com.example.config”而不是父包“com.example”中是个好主意,但您需要覆盖 Spring Boot 的默认组件扫描。
Spring Boot 只会扫描从应用程序类的包(用@SpringBootApplication
注释)及以下的组件(控制器、服务、存储库等)。
所以最好使用com.example.Application
,然后你可以使用com.example.rest.TheController
并且事情应该可以工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.