前回↓
はじめに
今回からSpringBootの実装に入る
まずはMVCモデルのひとつであるModelの作成
📚そもそもMVCモデルとは??
MVCモデルとはコードを管理する上で便利なModel,View,Controllerの3つの頭文字をとった概念である。
Model作成
まず部品であるModelを作成していきます
demo内にmodelフォルダを作成してその中にPerson.java
を作成します
package com.example.demo.model;
import jakarta.persistance.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import lombok.Data;
@Data
@Entity
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Integer id;
@Column(name = "name")
private String name;
@Column(name = "age")
private Integer age;
}
⚠️注意
このようなエラーが出ている場合はpom.xmlの<dependencies></dependencies>
内に以下を追記してください
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
✨解説
@から始まる見慣れないものがあると思います
@Data
@Entity
@GeneratedValue
@Id
@Column
これらはアノテーションと呼ばれるものです
SpringBootではアノテーションを前述することで動作や定義の決定を行うことができます
◎@Data
はコンパイル時に後述のクラスに対してこれらのメソッドを生成します
- setter()
- getter()
- toString()
- equals()
- hashCode()
◎@Entity
はJPAのエンティティクラスであることを定義します
◎@GeneratedValue
は主キーの値の生成方法を指定します
今回は自動採番を採用しています
◎@Id
はデータベースの主キーフィールドを宣言します
データベース内の主キーに設定したものにつけるとよいです
◎@Column
はエンティティの各フィールドにマッピングされる物理テーブルのカラム名を指定します
データベース内のカラムであることを指定するものです
アノテーションに関しては以下の記事が参考になるのでぜひ見てみてください
さいごに
今回はModelを作成しました
次回はViewを作成しようと思います