Spring framework

Gradle/SpringBoot+lombokでsetter/getterコード削減の例

投稿日:

gradle.buiildの記述

dependencies {
 compileOnly 'org.projectlombok:lombok:1.16.18' //この行を追加する
}

eclipseで「Gradleプロジェクトのリフレッシュ」を行うことで、「プロジェクトと外部の依存関係」に「lombok-1.16.18」が追加される。

compileOnlyは、コンパイル時のみ依存性を使用するという指示である。
lombokのアノテーションが付与されると、コンパイル結果の.classにはgetter/setterメソッドが生成されているので、実行時には必要ない。そのためcompileOnlyで良いのである。

UserEntity などへの適用

import lombok.Data;
import lombok.Getter;
import lombok.Setter;
@Data
public class UserEntity {
@Setter
@Getter
private int id;
}

このように使用する。

eclipseだとlombokはコンパイルエラーになる。

上記サイトにしたがって、eclipseにlombokをインストールすることで、エラーは解消する。

-Spring framework

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Spring MVC HTTPセッションの利用

Controllerクラスにおいてセッションやリクエストに任意の値を格納する方法は、いろいろある。便利なのは処理メソッドの引数にWebRequestをとっておけば、セッション・リクエスト両スコープに対 …

no image

SpringMVCでドメイン駆動開発に役立つサイト・スライド

1 SpringMVCでドメイン駆動開発を行う時の具体的なコード例 ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring from 亨 増田 2 データクラス+機能クラス …

no image

Spring-data-JPA/QueryDSL

DSLとは何でしょうか? ドメイン固有言語(ドメインこゆうげんご、英: domain-specific language、DSL)とは、特定のタスク向けに設計されたコンピュータ言語を意味する Qクラス …

no image

Spring MVC 典型的な階層設計とアノテーション

Spring MVCの典型的な階層設計 階層 クラスに付与するアノテーション コントローラー層 @Contoroller サービス層 @Serivice データ層 @Repository どれにも当て …

no image

アーキテクチャに拘るのはアーキテクトだけでよい

アーキテクチャ、アプリケーションのレイヤー化というのは、アーキテクトがこだわれば良い話である。 あまりそこに拘るがために、肝心のサービス内容を議論することがおざなりになってわいけない。 また、アーキテ …