關于Spring屬性編輯器詳解
代碼
但是,并非Bean的屬性都是這些常見的類型,如果你的Bean需要注入一個自定義類型的屬性,而又想享受IoC的好處,那么就只得自己開干,提供一個自定義的PropertyEditor了。 下面,分幾個步驟來說明,定義一個自定義PropertyEditor的過程。 1)首先,碰到的問題即是,要如何編輯自己的PropertyEditor,其實需要了解一點java.beans包的知識,在該包中,有一個java.beans.PropertyEditor的接口,它定義了一套接口方法(12個),即通過這些方法如何將一個String變成內部的一個對象,這兩個方法是比較重要的: a)setValue(Object value) 直接設置一個對象,一般不直接用該方法設置屬性對象 b)setAsText(String text) 通過一個字符串來構造對象,一般在此方法中解析字符串,將構造一個 類對象,調用setValue(Object)來完成屬性對象設置操作。 2)實現所有的接口方法是麻煩的,java.beans.PropertyEditorSupport 適時登場,一般情況下,我們通過擴展這個方便類即可。
3)編寫完后,就是在Spring配置文件中注冊該屬性類型編輯器的問題,Spring提供了專門的注冊工具類
下面給出一個小例子,例子先作一個簡單描述:
代碼
2.Address.java
代碼
AddressPropertyEditor.java
代碼
打開Spring配置文件,添上這兩個配置項:
代碼
? |
我的配置: