2009-12-15 146 views
1

@Repository @Service @Controller @Component瞭解春季註釋DI

- >僅適用於春季管理的bean(無需織布)
使用 - > @庫,@服務@Controller實際上是一個@Component,只是命名方便程序員理解

@Configurable 

--->用於非Spring管理豆(擁有織造用)

@Autowired 

- >使用了DI兩種情況下上述

是我的理解是否正確?

回答

2

除了@Configurable之外的所有內容都是正確的。從春天的javadoc:

公共@interface配置 標誌着一個類爲通過Spring驅動的配置。通常與AspectJ AnnotationBeanConfigurerAspect一起使用。

1

Spring註解吸引不同的目的。正如你所知,Spring大量使用代理來提供其功能。 但是這種功能性取決於目標註釋

所以,當你把

@Repository 
public class UserRepositoryImpl implements UserRepository { 

    public void saveUser(User user) { 
     // logic goes here 
    } 

} 

你是說

春天,代理我UserRepositoryImpl,如果它拋出任何數據庫異常,抓住它,並重新把它作爲一個DataAccessException的,通用的春天數據庫異常

等等......

關於,