Rumah  >  Artikel  >  Java  >  Anotasi Lombok Penting Setiap Pembangun Java Perlu Menguasai!

Anotasi Lombok Penting Setiap Pembangun Java Perlu Menguasai!

DDD
DDDasal
2024-11-03 15:59:30671semak imbas

Essential Lombok Annotations Every Java Developer Needs to Master!

Bosan menulis kod Java berulang? ? Lombok ada di sini untuk menyelamatkan hari ini! Dalam Spring Boot, anotasi Lombok adalah pengubah permainan, mengurangkan plat dandang dan menjadikan kod anda lebih bersih dan lebih mudah dibaca. Mari lihat anotasi Lombok yang mesti ada setiap pembangun Spring Boot perlu tahu!

1. @Getter dan @Setter

  • Penerangan: Menjana kaedah pengambil dan penetap untuk semua medan dalam kelas.
  • Penggunaan: Anda boleh menggunakan @Getter dan @Setter pada peringkat kelas untuk menjana getter dan setter untuk semua medan, atau pada peringkat medan untuk menjananya hanya untuk medan tertentu.

    @Getter
    @Setter
    public class User {
        private String name;
        private int age;
    }
    

2. @Data

  • Penerangan: Anotasi pintasan yang menggabungkan @Getter, @Setter, @RequiredArgsConstructor, @ToString dan @EqualsAndHashCode.
  • Penggunaan: Biasa digunakan untuk objek pemindahan data (DTO) dan entiti yang anda perlukan kefungsian asas tanpa banyak penyesuaian.

    @Data
    public class User {
        private String name;
        private int age;
    }
    

3. @AllArgsConstructor dan @NoArgsConstructor

  • Penerangan: @AllArgsConstructor menjana pembina dengan semua medan sebagai parameter, manakala @NoArgsConstructor menjana pembina tanpa hujah lalai.
  • Penggunaan: Selalunya digunakan dalam kombinasi dengan entiti Spring Data JPA di mana pembina no-arg diperlukan, atau untuk suntikan kebergantungan apabila semua kebergantungan adalah muktamad.

    @AllArgsConstructor
    @NoArgsConstructor
    public class User {
        private String name;
        private int age;
    }
    

4. @RequiredArgsConstructor

  • Penerangan: Menghasilkan pembina dengan parameter untuk semua medan akhir. Jika digunakan dalam kelas dengan medan @Autowired, ia boleh berguna untuk suntikan pergantungan.
  • Penggunaan: Berguna dalam Spring Boot apabila menggunakan suntikan kebergantungan berasaskan pembina.

    @RequiredArgsConstructor
    public class UserService {
        private final UserRepository userRepository;
    }
    

5. @Pembina

  • Penerangan: Melaksanakan corak Builder, membolehkan instantiasi objek yang mudah dan boleh dibaca dengan banyak parameter.
  • Penggunaan: Berguna untuk mencipta objek yang kompleks, terutamanya apabila anda tidak mahu berurusan dengan susunan parameter pembina.

    @Builder
    public class User {
        private String name;
        private int age;
    }
    
    // Usage
    User user = User.builder()
                    .name("Alice")
                    .age(25)
                    .build();
    

6. @ToString

  • Penerangan: Menghasilkan kaedah toString(). Anda boleh menyesuaikannya untuk memasukkan atau mengecualikan medan tertentu.
  • Penggunaan: Selalunya digunakan untuk tujuan pembalakan.

    @Getter
    @Setter
    public class User {
        private String name;
        private int age;
    }
    

7. @EqualsAndHashCode

  • Penerangan: Menghasilkan kaedah equals() dan hashCode(), berguna untuk membandingkan objek berdasarkan nilai medan dan bukannya rujukan.
  • Penggunaan: Berguna untuk entiti atau DTO, terutamanya apabila digunakan dalam koleksi.

    @Data
    public class User {
        private String name;
        private int age;
    }
    

8. @Nilai

  • Perihalan: Menandai kelas sebagai tidak boleh diubah, menjadikan semua medan peribadi muktamad dan mengalih keluar penetap. Juga digunakan @ToString, @EqualsAndHashCode dan @AllArgsConstructor.
  • Penggunaan: Biasa digunakan untuk objek pemindahan data tidak boleh ubah (DTO).

    @AllArgsConstructor
    @NoArgsConstructor
    public class User {
        private String name;
        private int age;
    }
    

9. @SneakyThrows

  • Penerangan: Membolehkan anda membuang pengecualian yang ditanda tanpa mengisytiharkannya dalam tandatangan kaedah.
  • Penggunaan: Berguna untuk mengelakkan sekatan cuba-tangkap, walaupun harus digunakan dengan berhati-hati untuk memastikan pengendalian pengecualian adalah eksplisit.

    @RequiredArgsConstructor
    public class UserService {
        private final UserRepository userRepository;
    }
    

10. @Slf4j

  • Penerangan: Menambahkan contoh Logger bernama log pada kelas, menjadikan pengelogan lebih mudah.
  • Penggunaan: Biasa digunakan dalam aplikasi Spring Boot untuk pengelogan.

    @Builder
    public class User {
        private String name;
        private int age;
    }
    
    // Usage
    User user = User.builder()
                    .name("Alice")
                    .age(25)
                    .build();
    

Anotasi ini menyelaraskan kod dan mengurangkan pelat dandang, menjadikannya sangat berharga dalam aplikasi Spring Boot di mana kod yang bersih dan boleh dibaca adalah penting.

Atas ialah kandungan terperinci Anotasi Lombok Penting Setiap Pembangun Java Perlu Menguasai!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn