Hibernate-persistent-classes

提供:Dev Guides
移動先:案内検索

Hibernate-永続クラス

Hibernateの全体的な概念は、Javaクラスの属性から値を取得し、それらをデータベーステーブルに保持することです。 マッピングドキュメントは、Hibernateがクラスから値を取得し、それらをテーブルおよび関連フィールドにマップする方法を決定するのに役立ちます。

オブジェクトまたはインスタンスがデータベーステーブルに格納されるJavaクラスは、Hibernateでは永続クラスと呼ばれます。 Hibernateは、これらのクラスが Plain Old Java Object (POJO)プログラミングモデルとも呼ばれるいくつかの単純なルールに従う場合に最適に機能します。

永続クラスの主なルールは次のとおりですが、これらのルールはどれも厳しい要件ではありません-

  • 永続化されるすべてのJavaクラスには、デフォルトのコンストラクターが必要です。
  • Hibernateおよびデータベース内のオブジェクトを簡単に識別できるように、すべてのクラスにIDを含める必要があります。 このプロパティは、データベーステーブルのプライマリキー列にマップします。
  • 永続化されるすべての属性はプライベートとして宣言され、 getXXX および setXXX メソッドがJavaBeanスタイルで定義されている必要があります。
  • Hibernateの中心的な機能であるプロキシは、永続クラスが最終でないか、すべてのパブリックメソッドを宣言するインターフェイスの実装に依存します。
  • EJBフレームワークに必要ないくつかの特殊なクラスとインターフェースを拡張または実装しないすべてのクラス。

POJO名は、特定のオブジェクトが特別なオブジェクトではなく、特にエンタープライズJavaBeanではない通常のJavaオブジェクトであることを強調するために使用されます。

簡単なPOJOの例

上記のいくつかのルールに基づいて、次のようにPOJOクラスを定義できます-

public class Employee {
   private int id;
   private String firstName;
   private String lastName;
   private int salary;

   public Employee() {}
   public Employee(String fname, String lname, int salary) {
      this.firstName = fname;
      this.lastName = lname;
      this.salary = salary;
   }

   public int getId() {
      return id;
   }

   public void setId( int id ) {
      this.id = id;
   }

   public String getFirstName() {
      return firstName;
   }

   public void setFirstName( String first_name ) {
      this.firstName = first_name;
   }

   public String getLastName() {
      return lastName;
   }

   public void setLastName( String last_name ) {
      this.lastName = last_name;
   }

   public int getSalary() {
      return salary;
   }

   public void setSalary( int salary ) {
      this.salary = salary;
   }
}