Java 如何在Spring中手动定义RestController?
我有很多用@RestController注释的RestController类,它们工作正常。但在某种情况下,我必须手动添加其中一个。我想我可以在Spring配置类中定义一个bean,所以我可以定义一个RestService,但是如何定义呢 例如:Java 如何在Spring中手动定义RestController?,java,spring,spring-mvc,Java,Spring,Spring Mvc,我有很多用@RestController注释的RestController类,它们工作正常。但在某种情况下,我必须手动添加其中一个。我想我可以在Spring配置类中定义一个bean,所以我可以定义一个RestService,但是如何定义呢 例如: @Configuration public class Config ..... { ............ @RestController public MyRestService myRestService() {
@Configuration
public class Config ..... {
............
@RestController
public MyRestService myRestService() {
if(shouldUseTypeA){
return new MyRestService<TypeA>(myParams);
}else{
return new MyRestService<TypeB>(myParams);
}
}
}
@配置
公共类配置。。。。。{
............
@RestController
公共MyRestService MyRestService(){
如果(应使用类型A){
返回新的MyRestService(myParams);
}否则{
返回新的MyRestService(myParams);
}
}
}
如果在应用程序启动之前您知道应该使用类型a
,请将其用作Spring配置文件,并根据激活的配置文件实例化右控制器
@Configuration
public class Config ..... {
// Type A
@Profile("shouldUseTypeA")
@RestController
public class TypeAService extends MyRestService<TypeA>(myParams){}
// Otherwise type B
@Profile("!shouldUseTypeA")
@RestController
public class TypeBService extends MyRestService<TypeB>(myParams){}
}
@配置
公共类配置。。。。。{
//A型
@简介(“应使用类型A”)
@RestController
公共类TypeAsService扩展MyRestService(myParams){}
//否则为B型
@配置文件(“!shouldUseTypeA”)
@RestController
公共类TypeBService扩展MyRestService(myParams){}
}
用@RestController
注释MyRestService
,并简单地用@Bean
注释方法。为什么不在方法中使用@responsebody呢。@Ramananoj我用过,问题是别的