Tự động tạo các thành phần cho Class bằng Lombok trong Eclipse

Java cũng như các ngôn ngữ lập trình hướng đối tượng khác, lúc khai báo Lớp và các thuộc tính ta cần viết các getter/setter, constructor… những thao tác này hầu như là nhàm chán và phải bắt buộc làm.

có rất nhiều thư viện giúp chúng ta giảm thiểu công đoạn này. Lombok là một trong các công cụ đó, nó giúp ta tự động tạo ra các thành phần của class. Với Lombok, ta chỉ cần khai báo cấu trúc dữ liệu của 1 Class, còn mọi thứ trong class đã có Lombok lo.

Dưới đây là các bước hướng dẫn chi tiết quá trình sử dụng Lombok trong Eclipse, chỉ cần cài plug-in lần đầu, các lần sau các bạn sẽ sử dụng nó một cách nhanh chóng.

Đầu tiên các bạn vào menu Help/chọn Install New Software… như hình dưới đây:

Màn hình Install hiển thị ra như dưới đây:

ta nhập https://projectlombok.org/p2 để cài đặt. nhìn thấy nút “Add”–>bấm vào nó:

Name: nhập https://projectlombok.org/p2

Location: nhập https://projectlombok.org/p2

Sau đó nhấn Add, các bạn chờ cho Eclipse tải xong Plug-in thì thấy thư viện Lombok như hình bên dưới:

Nhấn Next để tiếp tục, Tiếp tục chờ Eclipse cài đặt, sẽ thấy thông báo như dưới đây:

Nhấn Next để tiếp tục:

Chọn “I accept the terms of the license agreement” rồi bấm Finish

Nếu Eclipse có hỏi um xùm gì đó thì cứ bấm “Accept selected”

rồi khởi động lại Eclipse như chương trình yêu cầu:

Bước tiếp theo ta tải thư viện “lombok.jar” về để tham chiếu vào phần mềm, làm như sau:

Vào https://projectlombok.org/download tải bản mới nhất:

tải trực tiếp: https://projectlombok.org/downloads/lombok.jar

Lưu thư viện này vào máy tính để xíu nữa tham chiếu vào dự án.

Tạo dự án tên “TestLombok” như hình dưới đây:

Với mỗi dự án, bạn muốn dùng Lombok thì cứ Tạo một thư mục tên là “libs” rồi sao chép thư viện đó vào libs (bấm chuột phải vào Project / chọn New / chọn Folder):

Rồi đặt thư mục là libs:

Mục Folder name: đặt tên là libs

Sau đó nhấn Finish, ta thấy thư mục libs sẽ được đưa vào dự án như hình dưới đây:

Bây giờ các bạn copy thư viện “lombok.jar” đã tải vào thư mục libs (chỉ cần control+C và control+V thôi).

Tiếp theo ta cần tham chiếu lombok.jar và dự án:

Bấm chuột phải vào lombok.jar/ chọn Build Path / chọn Add to Build Path

Sau khi bấm xong thì thư viện sẽ được tham chiếu vào như sau, nó có rất nhiều lớp:

Tiếp theo tạo package và class cho dự án, ví dụ dưới này Tui có tạo:

Package name: tranduythanh.com.model

class name: SanPham

Ở trên các bạn thấy, lớp SanPham có 5 thuộc tính: ma, ten,soLuong,donGia, và ngayNhap:

[code language=”java”]
package tranduythanh.com.model;

import java.util.Date;
public class SanPham {
private int ma;
private String ten;
private int soLuong;
private double donGia;
private Date ngayNhap;
}

[/code]

thông thường, các bạn phải làm đầy đủ getter/setter, constructor…

với Lombok thì mọi thứ đơn giản, ta chỉ cần khai báo các notation cho nó là đủ:

Ở trên ta thấy:

@AllArgsConstructor tự động tạo ra constructor đầy đủ đổi số.

@NoArgsConstructor tự động tạo ra constructor mặc định

@Data tự động tạo mọi getter/setter cho class

[code language=”java”]
package tranduythanh.com.model;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@AllArgsConstructor
@NoArgsConstructor
@Data
@Builder
public class SanPham {
private int ma;
private String ten;
private int soLuong;
private double donGia;
private Date ngayNhap;
}

[/code]

Tiếp theo, ta thử test lớp SanPham bằng cách tạo ra lớp TestSanPham:

Tạo package tên “tranduythanh.com.test”, trong này tạo 1 lớp tên là “TestSanPham”.

Code mẫu chi tiết như sau:

Rõ ràng ta Sản phẩm tự động có các getter/setter, constructor… tiết kiệm rất nhiều thời gian cho Lập trình viên khi phải viết dự án với rất nhiều lớp.

code chi tiết:

[code language=”java”]
package tranduythanh.com.test;

import java.text.SimpleDateFormat;
import java.util.Calendar;

import tranduythanh.com.model.SanPham;

public class TestSanPham {
public static void main(String[] args) {
SanPham sp1=new SanPham();
sp1.setMa(1);
sp1.setTen(“Coca”);
sp1.setSoLuong(100);
sp1.setDonGia(25);
System.out.println(sp1);
System.out.println(“Tên sản phẩm =”+sp1.getTen());
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR, 2020);
cal.set(Calendar.MONTH, 8);
cal.set(Calendar.DATE, 20);
SanPham sp2=new SanPham(2, “Pepsi”, 50, 17, cal.getTime());
System.out.println(sp2);
SimpleDateFormat sdf=new SimpleDateFormat(“dd/MM/yyyy”);
System.out.println(“Tên sản phẩm 2=”+sp2.getTen());
System.out.println(“Ngày nhập sản phẩm 2=”+sdf.format(sp2.getNgayNhap()));
}
}

[/code]

kết quả khi chạy chương trình:

Như vậy Tui đã hướng dẫn xong các bạn cách dùng thư viện Lombok trong Eclipse để tự động tạo ra các thành phần cho Class nhằm tránh nhàm chán và tiết kiệm thời gian.

Các bạn chỉ cần cài plug-in 1 lần là xong, các lần sau chỉ cần tham chiếu tới thư viện lombok.jar nếu muốn dự án đó làm theo lombok.

Dưới đây là coding mẫu của bài: http://www.mediafire.com/file/oiehylc20gxp4li/TestLombok.rar/file

Chúc bạn thành công.

One thought on “Tự động tạo các thành phần cho Class bằng Lombok trong Eclipse”

Leave a Reply