spring配置檔案

2021-09-28 11:34:03 字數 1653 閱讀 5713

< context:annotation-config>

是用於啟用那些已經在spring容器裡註冊過的bean上面的註解,也就是顯示的向spring註冊;

autowiredannotationbeanpostprocessor

commonannotationbeanpostprocessor

persistenceannotationbeanpostprocessor

requiredannotationbeanpostprocessor

這四個processor,註冊這4個beanpostprocessor的作用,就是為了你的系統能夠識別相應的註解。

例如之前需要這樣註冊這個4哥processor:

="org.springframework.beans.factory.annotation. autowiredannotationbeanpostprocessor "

/>

一般來說,像@ resource 、@ postconstruct、@antowired這些註解在自動注入還是比較常用,於是spring給我們提供**< context:annotation-config/>**的簡化配置方式。

像@component、@controller、@service等這些註解:

單純使用< context:annotation-config/>對上面這些註解無效,不能啟用!

小結:< context:annotation-config />僅能夠在已經在已經註冊過的bean上面起作用。對於沒有在spring容器中註冊的bean,它並不能執行任何操作。

通過對base-package配置,就可以把controller、service、dao包下的註解全部掃瞄到了!

該配置項其實也包含了自動注入上述 四個processor 的功能,因此當使用context:component-scan後,就可以將 < context:annotation-config/> 移除了。

小結:< context:component-scan base-package=「xx.xx」/> 除了具有上面的功能之外,還具有自動將帶有@component,@service,@repository等註解的物件註冊到spring容器中的功能。

如果同時使用這兩個配置會不會出現重複注入的情況呢?

答案:因為< context:annotation-config />和 < context:component-scan>同時存在的時候,前者會被忽略。如@autowire,@resource等注入註解只會被注入一次!

< mvc:annotation-driven/>

1.從 標籤的shecma就能看出來,mvc,主要就是為了spring mvc來用的,提供controller請求**,json自動轉換等功能。

2.相比上面的兩個shecma是context開頭,那麼主要是解決spring容器的一些註解。

實際底層繫結了:

spring配置檔案

1 配置檔案的簡化 1 屬性的 property name foo value foovalue value property 簡化為 property name foo value foovalue 2 引用bean property name foo ref bean foobean prope...

Spring配置檔案載入外部配置檔案

有時,應用程式可能需要從不同的位置 例如 檔案系統 classpath或者url 讀取外部資源 例如 文字檔案 xml檔案 屬性檔案或或者影象檔案 通常,為了從不同位置載入資源,需要和不同的api打交道。spring的資源載入器提供了乙個統一的getresource 方法,使用這個方法可以通過資源路...

spring配置檔案模板

hibernate.dialect org.hibernate.dialect.mysql5dialect hibernate.hbm2ddl.auto update hibernate.show sql false hibernate.format sql false hibernate.cach...