この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:3
ページ更新者:T
更新日時:2026-05-15 03:52:15

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

この記事の要点
  • @Table は JPA Entity に対応する DB テーブル名を指定するアノテーション
  • 書式: @Table(name = "user")(クラス名と異なるテーブル名を使う場合に必須)
  • クラスにのみ付与可能。スキーマ指定は schema = "dbo"
  • 省略するとクラス名(snake_case 変換は実装依存)がテーブル名として使われる

 

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

@Tableとは

TableアノテーションはEntityクラスと対応するデータベースのテーブル名を指定する場合に使用します。

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

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;
    }
}