✍🏻Lombokと最新トレンド🧐
以前,ジェネレータを介して依存関係を注入することを理解した.
しかし、作成者、注入値を代入するコードなど、作成する必要があるものが多すぎます...
@Componentと@Autowiredの既存コードを使用します.
次のコードは、上記のLombokライブラリを適用した最終コードです.
ソース
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B8%B0%EB%B3%B8%ED%8E%B8/dashboard
しかし、作成者、注入値を代入するコードなど、作成する必要があるものが多すぎます...
@Componentと@Autowiredの既存コードを使用します.
@Component
public class OrderServiceImpl implements OrderService {
private final MemberRepository memberRepository;
private final DiscountPolicy discountPolicy;
@Autowired
public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicydiscountPolicy) {
this.memberRepository = memberRepository;
this.discountPolicy = discountPolicy;
}
}
ジェネレータを1つ置くだけで@Autowiredを省略できます.以下に示します. @Component
public class OrderServiceImpl implements OrderService {
private final MemberRepository memberRepository;
private final DiscountPolicy discountPolicy;
public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicydiscountPolicy) {
this.memberRepository = memberRepository;
this.discountPolicy = discountPolicy;
}
}
最近では、以下に示すように、@Autowiredを省略して使用するコンストラクション関数は1つしかありません.ここでLombokライブラリの@RequiredArgConstructorを使えば、コードがきれいになります!次のコードは、上記のLombokライブラリを適用した最終コードです.
@Component
@RequiredArgsConstructor
public class OrderServiceImpl implements OrderService {
private final MemberRepository memberRepository;
private final DiscountPolicy discountPolicy;
}
動作は既存のコードと同じです.実際のクラスを開き、以下のコードを追加しました~! public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) {
this.memberRepository = memberRepository;
this.discountPolicy = discountPolicy;
}
📝また、Lombokライブラリでは、@Getter/@Setterなど、開発に必要なさまざまな機能が提供されています.ソース
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B8%B0%EB%B3%B8%ED%8E%B8/dashboard
Reference
この問題について(✍🏻Lombokと最新トレンド🧐), 我々は、より多くの情報をここで見つけました https://velog.io/@lsj16632/Lombok과-최신-트랜드テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol