Trong thời đại toàn cầu hóa, việc xây dựng ứng dụng web hỗ trợ đa ngôn ngữ không chỉ là một lợi thế cạnh tranh mà còn là yếu tố thiết yếu để tiếp cận và phục vụ người dùng từ khắp nơi trên thế giới.
I18n mang đến giải pháp hoàn hảo để xây dựng các ứng dụng web đa ngôn ngữ một cách dễ dàng và hiệu quả.

1. Khái niệm

Internationalization (i18n) là quá trình thiết kế và phát triển một ứng dụng phần mềm sao cho nó có thể dễ dàng thích nghi với các ngôn ngữ, khu vực và văn hóa khác nhau mà không cần thay đổi mã nguồn cốt lõi.
"i" là chữ cái đầu, "n" là chữ cái cuối của từ "Internationalization", "18" biểu thị số chữ cái ở giữa (từ chữ thứ 2 đến chữ thứ 18).
Cho phép ứng dụng hỗ trợ nhiều ngôn ngữ Ví dụ: tiếng Anh, tiếng Việt, tiếng Pháp.
Đáp ứng các định dạng địa phương ngày tháng, tiền tệ, v.v..
Tăng tính tiếp cận và trải nghiệm người dùng trên toàn cầu.

2. Sử dụng trong tệp HTML

  • Tạo các tệp ngôn ngữ message_<tên ngôn ngữ>.properties trong thư mục src/main/resources/messages. Lưu ý tệp messages.properties sẽ là tệp mặc định và bằng tiếng anh.
locale đây là một khu vực địa lý hoặc văn hóa cụ thể. Nó thường là một ký hiệu ngôn ngữ được theo sau bởi một ký hiệu quốc gia, phân biệt nhau bởi dấu gạch dưới. Ví dụ: en_US biểu diễn English locale cho US
Tên ngôn ngữ được ký hiệu bằng 2 chữ cái thông qua bảng sau
  • Sử dụng [[#{message_key}]] nếu trong phương pháp thẻ, ngoài ra còn có thể sử dụng th:<tên_thuộc_tính>="#{message_key}"