本文匯總了Spring的常用注解,以方便大家查詢和使用,具體如下:
使用注解之前要開啟自動掃描功能
其中base-package為需要掃描的包(含子包)。
1
|
<context:component-scan base- package = "cn.test" /> |
@Configuration把一個類作為一個IoC容器,它的某個方法頭上如果注冊了@Bean,就會作為這個Spring容器中的Bean。
@Scope注解 作用域
@Lazy(true) 表示延遲初始化
@Service用于標注業務層組件、
@Controller用于標注控制層組件(如struts中的action)
@Repository用于標注數據訪問組件,即DAO組件。
@Component泛指組件,當組件不好歸類的時候,我們可以使用這個注解進行標注。
@Scope用于指定scope作用域的(用在類上)
@PostConstruct用于指定初始化方法(用在方法上)
@PreDestory用于指定銷毀方法(用在方法上)
@DependsOn:定義Bean初始化及銷毀時的順序
@Primary:自動裝配時當出現多個Bean候選者時,被注解為@Primary的Bean將作為首選者,否則將拋出異常
@Autowired 默認按類型裝配,如果我們想使用按名稱裝配,可以結合@Qualifier注解一起使用。如下:
@Autowired @Qualifier("personDaoBean") 存在多個實例配合使用
@Resource默認按名稱裝配,當找不到與名稱匹配的bean才會按類型裝配。
@PostConstruct 初始化注解
@PreDestroy 摧毀注解 默認 單例 啟動就加載
@Async異步方法調用,需要添加以下代碼:
1
2
3
4
5
|
<bean id= "taskExecutor" class = "org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor" > <property name= "corePoolSize" value= "10" /> <property name= "maxPoolSize" value= "300" /> </bean> <task:annotation-driven/> |
希望本文所述能對大家有所幫助。