Spring Bootの@RepositoryRestResourceアノテーションでCRUDを自動生成する方法
@RepositoryRestResourceアノテーションをリポジトリインタフェースに付与し、POJOに紐づけると自動でCRUDが自動生成されます。
| HTTPメソッド | 処理 |
|---|---|
| GET | 全件取得 |
| POST | 登録 |
| GET | 1件取得 |
| PUT | マージ |
| DELETE | 削除 |
| PATCH | 更新 |
Restリポジトリを依存関係に追加します。
build.gradle
implementation 'org.springframework.boot:spring-boot-starter-data-rest'
Employeeというエンティティを作成します。
package jp.co.confrage.entity;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity
public class Employee {
@Id @GeneratedValue private Long id;
private String name;
private Integer age;
}
Employeeのリポジトリを作成し、インタフェースに@RepositoryRestResourceアノテーションを付与します。
package jp.co.confrage.repository;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
import jp.co.confrage.entity.Employee;
@RepositoryRestResource
public interface EmployeeRepository extends JpaRepository<Employee, Long> {}
これで上記のHTTPメソッドに対応するREST APIが自動生成されます。Swagger UIから確認できます。

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^


コメント