Internaționalizarea, numită și i18n, de ce acest nume? Pentru că engleza internaționalizării este internaționalizare, există 18 litere între i și n, așa că se numește i18n. Dacă aplicația noastră este internaționalizată, poate fi ușor comutată în diferite medii lingvistice, cel mai frecvent este trecerea între chineză și engleză, iar funcția de internaționalizare este, de asemenea, destul de comună.
De exemplu, la trimiterea unei cereri specifice, setați o pereche cheie-valoare în antet: "Accept-Language":"zh", prin valoarea corespunzătoare Accept-Language, serverul poate decide ce limbaj regional să folosească, să găsească fișierul de resurse corespunzător, să-l formateze și să-l returneze clientului.
Creează un nou proiect Spring Boot, creează un fișier i18n sub folderul resurse și creează un nou fișier de configurare sub acest folder conform formatului "Language Abbreviation Table", așa cum este prezentat în figura de mai jos:
mesaj.proprietăți
message_en.proprietăți
Amintește-ți să adaugi parametri de configurare pentru a edita application.properties pentru a face configurația noastră eficientă:
Arc defineșteMessageSourceinterfețe pentru accesarea informațiilor internaționalizate.
getMessage (String code, Object[] args, String defaultMessage, Locale locale) getMessage (String code, Object[] args, Locale locale) getMessage(MessageSourceResolvable rezolvabil, localitate locală)
Creează un nou controler și încearcă să chemi un alt fișier de resurse pentru a returna un prompt cu următorul cod:
Proiectul este implementat pe un server Windows în limba chineză și nu există nicio problemă cu utilizatorii chinezi care accesează chineza. La implementarea pe versiunea în limba engleză a Linux, utilizatorii chinezi vor solicita o solicitare în engleză (citiți configurația fișierului de resurse în engleză).
Motivul este din cauza noastrăNu există niciun nou fișier .properties chinezesc, în acest moment programul va citi fișierul de resurse care corespunde limbajului curent al sistemului, iar dacă nu poate fi citit din nou, nu va putea citi nicio configurație identificată a fișierului de proprietăți。 Când publicăm proiectul pe sistemul Linux în engleză, deși programul nu poate citi configurația chineză, va citi fișierul de configurare al _en.properties, astfel încât interfața returnează promptul chinezesc.
Soluție, decorFallbackToSystemLocalefals, codul este următorul:
(Sfârșit)
|