Hibernateのカスタムタイプ

Hibernateは、ほとんどすべてのニーズに合わせてカスタマイズできる優れたORMツールです。 このトピックでは、任意のタイプのフィールドを保存する方法を示します。 たとえば、データベースに格納する文字列の配列(String [])とPOJOオブジェクトを取得します。

  1. public class StringArrayContainer { private Integer id ; private String [ ] tags ; // . }



  2. public class StringArrayContainer { private Integer id ; private String [ ] tags ; // . }



  3. public class StringArrayContainer { private Integer id ; private String [ ] tags ; // . }



  4. public class StringArrayContainer { private Integer id ; private String [ ] tags ; // . }



  5. public class StringArrayContainer { private Integer id ; private String [ ] tags ; // . }





hibernateが「文字列の配列」タイプのフィールドをデータベースに保存できるようにするには、UserTypeインターフェイスを実装するクラスを作成し、マッピング(hbm.xmlファイル)で参照する必要があります(そして十分です)。

  1. パブリック クラス StringArrayCustomType UserType {を 実装します
  2. // TODO:実装を作成します。
  3. }




メソッドごとにStringArrayCustomTypeクラスメソッドの実装を記述します。





最後に、マッピングファイル(hbm.xml)を更新します。

  1. <クラス = "StringArrayContainer" テーブル = "コンテナ" >
  2. <id name = "id" >
  3. <generator class = "native" />
  4. </ id >
  5. <プロパティ = "タグ" = "タグ" タイプ = "StringArrayCustomType" />
  6. </クラス>




文字列の配列を保存してお楽しみください。



PS 次の記事では 、このフィールドでフィルタリングするための特別な基準固定します。

______________________

テキストは©SoftCoder.ruによってブログエディターで作成されます。



All Articles