Trong các ứng dụng, trang web hiện nay, đa phần đều có phần gửi email đến khách hàng để thông báo một thông tin cần thiết nào đó, yêu cầu thay đổi mật khẩu, thông tin về đơn hàng, hoặc các tin quảng cáo,… Có thể thấy chức năng này khá quan trọng và ở một số trường hợp gần như không thể thiếu.
Bài viết này mình sẽ chia sẻ cho các bạn mới tìm hiểu, hoặc đã tìm hiểu qua nhưng vẫn chưa biết cách làm sao để tạo một project với chức năng gửi một email đến bất kỳ tài khoản email khác. Ở đây mình sử dụng SpringBoot và teamplate là Thymeleaf.
Các bước tạo project:
Đầu tiên, chúng ta sẽ tạo 1 project SpringBoot, mình sẽ build bằng gradle, các bạn có thể sử dụng maven, tùy vào thói quen của từng người.

Sau khi tạo xong project, chúng ta thực hiện implement các thư viện cần thiết:

Config các value bắt buộc:
- Username ở đây chính là tài khoản email mà bạn sẽ dùng để gửi thông báo đến các tài khoản khác.
- Password chính là mật khẩu tài khoản email của bạn.

- Có một yêu cầu bắt buộc về bảo mật từ phía google nếu bạn sử dụng gmail, bạn phải vào phần cài đặt tài khoản và cho phép các ứng dụng bên thứ ba truy cập, đối với các tài khoản đã cài đặt bảo mật hai lớp không áp dụng được. Để tránh các rắc rối không cần thiết, chúng ta có thể tạo một tài khoản mới để test mà không lo ảnh hưởng tới tài khoản gmail chính.

Tạo một service cấu hình đường dẫn đến template gửi email và các value cần thiết nếu có.


Tạo thêm một service chứa phần xác thực tài khoản và thông tin email sẽ nhận được thông báo.


Controller đơn giản chỉ có phương thức POST gọi từ service bên trên đã viết.

Template sẽ chứa nội dung email bạn cần gửi đến một người nào đó.

Mở Postman và test, sau khi gửi thành công, chúng ta sẽ nhận được một email như những gì đã viết trong template.

Chi tiết có thể xem: TẠI ĐÂY