この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:2
ページ更新者:T
更新日時:2019-02-01 06:59:47

タイトル: @Id
SEOタイトル: 【Spring】@Idアノテーションとは

この記事の要点
  • @Id は JPA Entity の主キーに付与するアノテーション
  • javax.persistence.Id(または Jakarta 版 jakarta.persistence.Id)を import する
  • 複合主キーには @EmbeddedId または @IdClass を使う
  • 自動採番なら @GeneratedValue(strategy = GenerationType.IDENTITY) を併用

 

本稿はSpringFrameworkの@Idについて説明します。

@Idとは

Entityクラス内で定義した主キーに付与するのがIdアノテーションとなります。

※複合主キーの場合は@EmbeddedIdを使用します。

以下、Idアノテーションの実装例です。

package com.example.demo.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="user")
public class User {
    
   
@Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column
    private long id;
    
    @Column(length=50, nullable = false)
    private String name;

    public long getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}