[Java]Lombokでコードを短縮させる。byClassmethod検索AWSAlexaモバイルビッグデータサーバーレスTableauAlteryxイベント[Java]Lombokでコードを短縮させる。2016年07月07日takahara(111)7この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。はじめにJavaでコードを書いていると毎回必ず必要になるメソッドが有りますが、ちょっと面倒だな〜と感じることは無いでしょうか。そこで使えるのがlombokというライブラリです。8インストールまずlombokのサイトからjarファイルをダウンロードします。Downloadjarファイルはインストーラーになっているので、実行したら下記画面で対象のIDEを選択します。ところが、Mac環境だとすんなり進ま無い事が有りますので、該当した方は下記の設定を行ってください。インストーラが動かない時の対処法Eclipseの「パッケージの内容を表示」から、/Eclipse.app/Contents/MacOSにlombok.jarを配置、/Eclipse.app/Contents/Eclipse/eclipse.iniの最後に下記を追加して起動するだけです。-javaagent:lombok.jar-Xbootclasspath/a:lombok.jar初回は念のためターミナルから-cleanで起動しました。通常はこの様に書いたりします。内容は、フィールド変数、デフォルトコンストラクタ、コンストラクタ、ゲッター、セッターです。number;}}lombokを使うとこんなに短くなります。number;}@AllArgsConstructorフィールドの変数(idとnumber)を引数にしたコンストラクタが自動的に生成されます。@NoArgsConstructor引数を持たないデフォルトコンストラクタが自動的に生成されます。@GetterGetter生成。変数ごとに設定できます。クラスにアノテートすると全フィールド変数が対象になります。@SetterSetter生成。使い方はGetterと同様ですが、finalではない事が条件。試しに使えるか確認してみます。Test();test.setId("aaa");test.getNumber();@DataDataというアノテーションをクラス名の上に記述すると、下記のアノテーションの機能を持たせてくれます。@GetterGetter生成。変数ごとに設定できます。クラスにアノテートすると全フィールド変数が対象になります。@SetterSetter生成。使い方はGetterと同様ですが、finalではない事が条件。@RequiredArgsConstructor初期化が必要なフィールド変数を引数にしたコンストラクタを生成。@ToStringフィールド変数を表示するtoString()を設定。@EqualsAndHashCodeeaualsとhashCodeを生成。使ってみるとこんなに短くなりました。number;}さいごにコードは長くなる一方なのでlombokなどのライブラリを使用して冗長的にならない様にしたいですね。導入編的に進めましたが、次回は別のアノテーションも紹介しようと思います。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。カフェ店長のオカノです。今日はオフィスに用があるので、通勤ラッシュを避けて出社しました。この子は新メンバーのさめくんです。在宅勤務が推奨されているのでオフィスが閑散としており、すこしさみしそうです。本が出ていたので読んでみたところよかったので紹介させていただきます。使いたいときの注意点を書きました。新井成一64最近Sphinxつかってドキュメントを書いてるのですがなかなかイケています。臼田佳祐295ワークフロー自動化OSSのn8nをAWS環境で建てて検証してみました。非常に期待できるサービスです。Fargateの勉強をしています。使ってみたい方は参考にしてください。洋介255SnowflakeがAWSの東京リージョン上で稼働するようになりました。データを日本に置けます。芳賀健232こんにちは!猫様の忠実なるしもべ、芳賀健です。Tokyoで開催されました。カフェ店長のオカノです。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。