10.1 JPA(JavaPersistenceAPI)とは
private Integer capacity;
// constructor, getter, setter
}
❶
@javax.persistence.Entity
アノテーションを付与し、
Entity
クラスであることを示す
❷
@javax.persistence.Table
アノテーションを付与し、マッピングさせるテーブル名を指定する。省略した場合は、
クラス名を大文字にした名前のテーブル(今回の場合は
"ROOM"
)へ マッ ピ ン グ さ れ る
❸
JPAとしては
Entity
は
Serializable
である必要はないが、拡張性を考慮して
Serializable
としている
❹
@javax.persistence.Id
アノテーションを付与し、主キーであることを示す。主キーが複合キーとなっている場合
は、
@javax.persistence.EmbeddedId
を使用することで対応できる
❺
@javax.persistence.GeneratedValue
アノテーションを付与することで、主キーの生成を JPA に委ねることがで
きる。
strategy
属性に
GenerationType
を指定することで生成方法(シーケンスを使用する、キー生成用テーブル
を使用するなど)を指定することが可能だが、デフォルトでは
GenerationType.AUTO ...