Java spring boot中spring boot资源上@Component注释的用途

Java spring boot中spring boot资源上@Component注释的用途,java,spring,jersey,spring-boot,spring-annotations,Java,Spring,Jersey,Spring Boot,Spring Annotations,在SpringBoot文档中,关于JAX-RS和Jersey的部分,“所有注册的端点都应该是带有HTTP资源注释的@Components(@GET等),例如”。上面的资源在没有@Component注释的情况下仍然有效。通过省略@Component注释,我将打破什么?“以使JAX-RS资源能够使用需要代理的Spring功能,例如Spring事务管理(使用@Transactional)、Spring安全性和面向方面的编程(例如@aspect),资源本身必须由Spring管理,方法是用@Compone

在SpringBoot文档中,关于JAX-RS和Jersey的部分,“所有注册的端点都应该是带有HTTP资源注释的@Components(@GET等),例如”。上面的资源在没有@Component注释的情况下仍然有效。通过省略@Component注释,我将打破什么?

“以使JAX-RS资源能够使用需要代理的Spring功能,例如Spring事务管理(使用@Transactional)、Spring安全性和面向方面的编程(例如@aspect),资源本身必须由Spring管理,方法是用@Component、@Service、@Controller或@Repository注释:“

Spring不会管理
TestResource
实例。@SotiriosDelimanolis说得对
TestResource
不是由Spring管理的,而是Jersey,因此使用
@Component
@Controller
等对其进行注释并不重要。与Jersey相比,由Spring管理
TestResource
是否有优势或劣势@SotiriosDelimanolis@user2004685这两种资源的生命周期将不同。有关详细信息,请参阅我的答案。此外,您还必须注意,Spring托管资源的生命周期与普通托管资源不同。详情请看我的答案。
@Path("test")
public TestResource {

    @GET
    public Response testGet() {
        return Response.ok().build();
    }

}