私も個人的にLombok推しなので、@kisさんの以下記事に賛同(^^)
JavaでIDEのアクセッサ生成よりlombokを使ったほうがいい理由 きしだのはてな
前回のプロジェクトでは開発途中にLombokの存在に気付いたのですが、かなり作り込んだ段階だったので、リスクを恐れて利用しませんでしたが、次回からは絶対に使いたいです!→諦めた当時のエントリ「開発途中で出会ったLombok…」
で、上記エントリにある「フィールド名変更が少し面倒」という点ですが、確かに以下のようなコードがあった場合
LombokSample.java
package jp.co.hoge.lomboksample;
import java.util.Date;
import lombok.Getter;
import lombok.Setter;
public class LombokSample {
@Setter @Getter
private String str;
@Setter @Getter
private int num;
@Setter @Getter
private Date date;
}
App.java
package jp.co.hoge.lomboksample;
import java.util.Date;
public class App
{
public static void main( String[] args )
{
LombokSample sample = new LombokSample();
sample.setStr("Lombokいいよね");
int myNumber = sample.getNum();
sample.setDate(new Date());
}
}
LombokSampleクラスのフィールド名を変えるには通常、以下の手順を最初に踏むかと思います。
LombokSampleクラスのフィールドでstrをリファクタリングで変数名変更
str2に変えます
App.javaのsetterは残念ながら変わらずエラー
と、残念な感じです。この例ではsetterが1箇所使ってるだけですが、普通は膨大かと(^^;
ただ、NetBeansのナビゲータ(表示されていない場合は、「ウィンドウ」メニューの「ナビゲート」から「ナビゲータ」を選択)に見えているLombokが自動生成したsetter/getterに対して右クリック、リファクタリングをすると…
まずはsetter
変数名をstrからstr2に変える前提ですが。
確認すると参照しているところのメソッド名が変更されています。警告ある点は後程。
同じくgetterも同様にリファクタリングします。
で、先ほどの警告を消すには、フィールド名をstr2に変えれば
これでOKです!
わりと簡単な1つの方法として…
@kisさんがブログに書いていることと趣旨あってるかな(^^;