プログラミング逆引き辞典

~ 多言語対応のプログラミングレシピ ~

SpringBoot入門 vol.4:「Lombock」を設定しよう

「Lombock」とは

アノテーションを使用することによってgetter・setterメソッド等の記述を不要にする便利なライブラリ
 
 


■設定方法

「build.gradle」ファイルに下記を記述

 

【記述するブロック①】:configurations

※「configurations」ブロックがない場合はブロックごと作成する

【記述するコード①】:

compileOnly {
            extendsFrom annotationProcessor
}

【記述例】:

configurations {
    compileOnly {
            extendsFrom annotationProcessor
    }
}

 

【記述するブロック②】:dependencies

【記述するコード②】:

compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'

【記述例】:

dependencies {
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
}

 
 

上記を反映した「build.gradle」の結果

plugins {
    id 'org.springframework.boot' version '2.2.1.RELEASE'
    id 'io.spring.dependency-management' version '1.0.8.RELEASE'
    id 'java'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

repositories {
    mavenCentral()
}

configurations {
    compileOnly {
            extendsFrom annotationProcessor
    }
}

dependencies {
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation('org.springframework.boot:spring-boot-starter-test') {
        exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
    }
}

test {
    useJUnitPlatform()
}

 
 


■主なアノテーション

・@Data

下記メソッドが生成される
・getterメソッド
・setterメソッド
・equalsメソッド
・canaeEqualsメソッド
・hashCodeメソッド
・toStringメソッド
・コンストラクタ
 

・@AllArgsConstructor

全てのフィールドを引数に持つコンストラクタを生成
 

・@NoArgsConstructor

引数を持たないコンストラクタを生成
 
 

※参考 「@Data」の効果を確認

「@Data」の付与前後をEclipseのアウトラインで確認
 
確認用にint型の「id」というフィールドを持つEmployeeクラスを作成
 

@Dataを付与する前

フィールドしかない状態

 

@Dataを付与した後

getterメソッドやsetterメソッド等が追加される

 
 


前へ次へ
 
目次へ戻る