POJO Generator: Hỗ trợ tạo các Pojo tự động trong Intellij Idea

Chào các bạn, trong các bài viết trước thì mình đã từng giới thiệu tới các bạn một thư viện đó là Lombok. Thư viện này giúp chúng ta đơn giản hóa việc tạo các POJO (Plain Old Java Object) trong Java.

Bạn nào chưa biết thì có thể tham khảo tham khảo bài viết đó tại đây: Cài đặt thư viện Lombok: Bạn sẽ bớt khổ hơn khi code JAVA

Nhưng thực tế thì trong nhiều dự án, chúng ta mong muốn là làm sao để sinh ra các lớp Entity, DTO từ các bảng trong cơ sở dữ liệu vì số lượng các bảng, các trường trong là rất nhiều.

Nếu bạn tạo ra nó một cách thủ công thì sẽ rất mất thời gian và cũng sẽ rất dễ bị sai sót. Lúc này bạn nên cài POJO Generator (một plugin tuyệt vời dành cho các bạn sử dụng IntelliJ Idea).

#1. Kết nối đến cơ sở dữ liệu

Đầu tiên, các bạn phải kết nối đến cơ sở dữ liệu mà các bạn sử dụng thông qua IntelliJ trước đã. Cụ thể cách kết nối dữ liệu thì mình đã có một bài viết hướng dẫn riêng rồi.

Các bạn có thể tham khảo tại đây: Cách kết nối MySQL Server trong IntelliJ, đã đến lúc bỏ MySQL Workbench

Còn trong bài viết này, mình sẽ kết nối đến hệ quản trị cơ sở dữ liệu MySQL như hình bên dưới. Các bạn có thể chọn bất kỳ hệ quản trị cơ sở dữ liệu nào các bạn thích.

cai-dat-pojo-generator (1)

Điền đầy đủ các thông tin kết nối (các bạn có thể tham khảo bài viết bên trên để rõ hơn) => rồi bấm Apply để kết nối đến cơ sở dữ liệu.

cai-dat-pojo-generator (2)

Đây chính là cơ sở dữ liệu mà mình đã kết nối đến. Các bạn có thể click vào tab Database như hình bên dưới để mở.

cai-dat-pojo-generator (3)

#2. Cài đặt POJO Generator Plugin

Bước tiếp theo đó là chúng ta sẽ cài đặt tiện ích POJO Generator để có thể tự động sinh ra các EntityDTO class trong quá trình code Java.

Các bạn vào mục File => Setting như hình bên dưới.

cai-dat-pojo-generator (4)

Ở tab Plugins, các bạn chọn Marketplace như hình bên dưới => Sau đó nhập POJO Generator trong ô tìm kiếm và bấm tìm kiếm.

Kết quả tìm kiếm các bạn chọn plugin như hình mình chọn bên dưới => rồi bấm Install để cài đặt. Cuối cùng bấm OK để xác nhận và nếu có thể hãy Restart IntelliJ để kích hoạt tiện ích này.

cai-dat-pojo-generator (5)

#3. Sinh ra các lớp Entity, DTO dựa trên bảng trong cơ sở dữ liệu

Sau khi cài đặt plugin thì các bạn mở lại tab Database mà các bạn vừa kết nối ở Bước 1. Tại đây bạn muốn sinh ra Entity class hay DTO class từ bảng nào thì chuột phải vào bảng đó.

Dưới cùng sẽ có lựa chọn sử dụng POJO Generator. Các bạn có thể bấm vào và chọn sinh ra các Entity cũng như DTO tương ứng với bảng đó.

cai-dat-pojo-generator (6)

Sau khi chọn sinh ra Entity hay DTO thì các bạn phải chọn thư mục các bạn sẽ chứa lớp đó sau khi nó được sinh ra. Ở đây mình thường để trong thư mục model của dự án. Các bạn có thể để ở bất cứ thư mục nào trong dự án.

cai-dat-pojo-generator (7)

Sau khi bấm OK thì đây chính là lớp Entity mà tiện ích đã tự động sinh ra cho mình. Các trường trong cơ sở dữ liệu sẽ được mapping tương ứng với các trường trong lớp được sinh ra.

cai-dat-pojo-generator (8)

Để sinh ra một DTO class thì các bạn cũng làm tương tự như với Entity class nhé.

cai-dat-pojo-generator (9)

Các bạn có thể tạo một thư mục riêng tên là dto  để lưu các lớp DTO (Data Transfer Object).

cai-dat-pojo-generator (10)

Và đây chính là nội dung file DTO được sinh ra tương ứng với bảng customers trong cơ sở dữ liệu.

cai-dat-pojo-generator (11)

Như các bạn thấy, trên thực tế thì plugin này vẫn sinh ra các hàm setter, getter (khiến cho các lớp EntityDTO không được gọn và tốn thời gian biên dịch ra file .class)

Để khắc phục nhược điểm này các bạn có thể xóa hết các hàm Setter, Getter và với thư viện Lombok như sau.

cai-dat-pojo-generator (12)

#4. Kết luận

Okay, như vậy là mình đã hướng dẫn xong cho các bạn cách cài đặt POJO Generator trên IntelliJ để tự động sinh ra các lớp Entity, DTO dựa trên bảng trong cơ sở dữ liệu rồi nhé.

Với các dự án thực tế, việc lập trình viên có thêm thời gian để tập trung cho việc giải quyết các vấn đề liên quan đến nghiệp vụ là rất quan trọng, với khoảng thời gian tiết kiệm được thì lập trình viên sẽ có cơ hội cải thiện chất lượng mã nguồn cho dự án được tốt hơn.

Vâng, và các tiện ích mở rộng/ plugins như POJO Generator, thư viện Lombok… được sinh ra là với mục đích như vậy. Giúp giảm thiểu tối đa thời gian của lập trình viên dành cho các thao tác mang tính thủ tục.

Hi vọng là bài viết này sẽ giúp các bạn lập trình viên Java có thêm công cụ để tối ưu hóa thời gian cho việc lập trình của mình. Hẹn gặp lại các bạn trong các bài viết tiếp theo nhé 🙂

CTV: Nguyễn Đức Cảnh – Blogchiasekienthuc.com

Bài viết đạt: 5/5 sao - (Có 1 lượt đánh giá)
Note: Bài viết này hữu ích với bạn chứ? Đừng quên đánh giá bài viết, like và chia sẻ cho bạn bè và người thân của bạn nhé !

Administrator: Kiên Nguyễn

Có một câu nói của người Nhật mà mình rất thích đó là " Người khác làm được thì mình cũng làm được ". Chính vì thế mà hãy theo đuổi đam mê, thành công sẽ theo đuổi bạn ! Nếu như bạn đang gặp khó khăn và cần sự trợ giúp thì hãy comment phía bên dưới mỗi bài viết để nhận được sự hỗ trợ từ cộng đồng Blog Chia Sẻ Kiến Thức nhé.

Một vài lưu ý trước khi comment :

Thư điện tử của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Tất cả các comment của các bạn sẽ được giải đáp trong vòng 48h !
Không được sử dụng từ khóa trong ô 'Name', bạn hãy dùng tên thật hoặc Nickname của bạn !
Không dẫn link sang trang web/blog khác. Xem quy định comment tại đây. Thank All!

Leave a Reply

Your email address will not be published. Required fields are marked *