天天看點

hibernate之自定義資料類型簡介

    hibernate的強大用過的童鞋肯定會知道的,通過or映射我們可以很友善的實作資料庫操作,hibernate對我們一些類型的映射都提供了很好的支援,但是顯然也有不給力的地方,比如簡單的注冊,一個人可能有好多郵箱,對于這個問題怎麼做呢?有人說簡單,可以另外開一張表,恩,很不錯,确實可以,可是這樣有時候可能小題大作了。也有人說,直接将郵箱拼接成字元串然後在存儲,這個想法也很好,但在我們讀出來的時候就要再進行一次解析操作,将email還原,這些都要求我們程式設計人員自己完成。那麼hibernate有沒有提供什麼好的支援呢?回答是肯定的,hibernate給我們提供了一個usertype接口,通過usertype我們可以對一些常見的類型進行封轉,轉變成具有個性的類型。

hibernate之自定義資料類型簡介
hibernate之自定義資料類型簡介
hibernate之自定義資料類型簡介

實作usertype的源碼:

student實體類:

student.hbm.xml的配置:

client類:

輸出結果:

hibernate之自定義資料類型簡介