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メソッド等が追加される