@Repository @Service @Controller @Component
- >仅用于弹簧托管bean(无需编织)
- > @repository,@ Service @controller实际上是@Component,只是命名程序员更容易理解
@Configurable
--->用于非弹簧管理的bean(用于编织)
@Autowired
- >用于上述两种情况的DI
我的理解是否正确?
答案 0 :(得分:2)
@Configurable以外的所有内容都是正确的。来自Spring javadocs:
public @interface可配置 将类标记为符合Spring驱动配置的条件。通常与AspectJ AnnotationBeanConfigurerAspect一起使用。
答案 1 :(得分:1)
Spring注释有不同的用途。如您所知,Spring大量使用代理来提供其功能。 但是这个功能取决于目标注释。
所以当你把
@Repository
public class UserRepositoryImpl implements UserRepository {
public void saveUser(User user) {
// logic goes here
}
}
你在说
Spring,代理我的UserRepositoryImpl并且如果它抛出任何数据库异常,捕获它并将其作为DataAccessException重新抛出,这是一个通用的Spring数据库异常
等等......
的问候,