@Autowired
官方給出的定義是這樣:
Spring IoC容器可以自動裝配(autowire)相互協作bean之間的關聯關係。因此,如果可能的話,可以自
動讓Spring通過檢查BeanFactory中的內容,來替我們指定bean的協作者(其他被依賴的bean)。由於
autowire可以針對單個bean進行設置,因此可以讓有些bean使用autowire,有些bean不採用。autowire的
方便之處在減少或者消除屬性或構造器參數的設置,這樣可以給我們的配置文件減減肥。
自動裝配屬性有6個值可選,分別是:byName、byType、constructor、autodetect、no、default,可以根據英文釋義去理解。
@Transactional
Spring事務的傳播行爲 :
在service類前加上@Transactional,聲明這個service所有方法需要事務管理(由Spring管理)。每一個業務方法開始時都會打開一個事務。即是方法裏面對數據庫操作,如果失敗則spring負責回滾操作,成功提交操作。
@Service
@Service用於標註業務層組件。
mvc:annotation-driven
<mvc:annotation- driven/>在初始化的時候會自動創建兩個對 象,org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter 和 org.springframework.web.servlet.mvc.annotation.DefaultAnnotationMethodHandlerMapping.
<mvc:annotation-driven />開啓了之後它給AnnotationMethodHandlerAdapter初始化7個轉換器,可以通過調用AnnotationMethodHandlerAdapter類的getMessageConverts()方法來獲取轉換器的一個集合 List<HttpMessageConverter>
默認給AnnotationMethodHandlerAdapter初始化的有(當然我們也可以添加自定義的converter)
ByteArrayHttpMessageConverter
StringHttpMessageConverter
ResourceHttpMessageConverter
SourceHttpMessageConverter<T>
XmlAwareFormHttpMessageConverter
Jaxb2RootElementHttpMessageConverter
MappingJacksonHttpMessageConverter