Kỹ thuật Autowiring sử dụng annotation trong Spring Framework

1018

Bài viết được sự cho phép của smartjob.vn

Có 3 cách để autowiring trong Spring là:
– Sử dụng annotation
– Sử dụng code Java
– Cấu hình trong file XML.

  Bảo mật ứng dụng Java web bởi Spring Security
  10 Frameworks tốt nhất hiện nay cho PHP

Trong bài viết này giới thiệu đến các bạn kỹ thuật autowiring dùng annotation. Đây là cách autowiring nhanh, dễ thực hiện nhất, do chỉ cần đặt annotation @Autowired  trước phương thức set (dùng cho việc khởi tạo Object) (*) và đặt annotation @Service  trước class chứa phương thức (*).

Ví dụ dưới đây minh họa một giao dịch ngân hàng: chuyển tiền giữa 2 tài khoản.

Chuẩn bị công cụ:
– JDK 8 update 92 [1]
– IntelliJ IDEA 2016.1.2 [2]
– Maven 3.3.9 [3]
– Apache Tomcat 8.0.35 [4]
– Trình duyệt web (Google Chrome, Mozilla Firefox, v.v..)

Khởi tạo project:

Chọn project Maven từ archetype:

Khai báo 3 tham số GAV khởi tạo project (GAV: Group – ArtifactId – Version)

GroupId: vn.smartjob.demo
ArtifactId: demoSpring
Version: 1.0.0-SNAPSHOT (bạn nên dùng hậu tố -SNAPSHOT).

Đặt tên project và chọn thư mục lưu project:

Bạn sửa lại file pom.xml như sau:

Các dependency quan trọng đã được highlight trong mã nguồn bên trên (dòng 22, 27, 32, 37, 42). Thư viện đã được import tự động

Do project được tạo ra từ Maven archetype, do đó cần chỉnh sửa thêm. Bạn tạo thư mục java  để chứa mã nguồn.

Bạn cần thao tác này để IntelliJ IDEA nhận diện thư mục java là thư mục chứa source code.

Bạn sẽ tạo package (chứa các class Java) vào thư mục java vừa tạo ở trên.

Tạo thực thể tài khoản là Account:

Interface AccountDAO dùng làm khuôn dạng cho các phương thức truy vấn dữ liệu:

Triển khai class DAO thực tế:

Chúng ta có 2 tài khoản ngân hàng: Hoàng Thế Anh có 8 triệu đồng trong tài khoản (id = 1). Nguyễn Đức Hải có 4 triệu đồng trong tài khoản (id = 2). Để đảm bảo ví dụ minh họa không quá phực tạp, chúng ta không truy vấn vào cơ sở dữ liệu thực, mà sử dụng cơ sở dữ liệu mô phỏng, dạng HashMap. Các phương thức không liên quan đến CRUD (Creat- Read – Update – Delete) nguyên tử (mức nhỏ nhất của một truy vấn), sẽ xử lý bởi AccountService  và AccountServiceImpl .

File xml khai báo:

Tạo file beans.xml  trong thư mục resources:

Ứng dụng chính:

Dòng code 13 và 21 rất quan trọng, nó được highlight để bạn chú ý.

Download source code: annotation-based-autowiring . Bạn cũng có thể clone/fork từ Github: https://github.com/SmartJobVN/annotation-based-autowiring

Bài viết gốc được đăng tải tại smartjob.vn

Có thể bạn quan tâm:

Xem thêm Jobs IT for Developer hấp dẫn trên TopDev