Internacionalizacija, imenovana tudi i18n, zakaj to ime? Ker je internacionalizacija angleščine internacionalizacija, je med i in n 18 črk, zato se imenuje i18n. Če je naša aplikacija internacionalizirana, jo je mogoče enostavno preklapljati v različnih jezikovnih okoljih, najpogostejši je prehod med kitajščino in angleščino, funkcija internacionalizacije pa je prav tako precej pogosta.
Na primer, ko pošiljate določeno zahtevo, nastavite par ključ-vrednost v glavi: "Accept-Language":"zh", preko ustrezne vrednosti Accept-Language lahko strežnik odloči, kateri regijski jezik bo uporabil, najde ustrezno datoteko z viri, jo formatira in vrne odjemalcu.
Ustvarite nov Spring Boot projekt, ustvarite i18n datoteko pod mapo resources in ustvarite novo konfiguracijsko datoteko v tej mapi v skladu s formatom "Language Abbreviation Table", kot je prikazano na spodnji sliki:
message.properties
message_en.lastnosti
Ne pozabite dodati konfiguracijskih parametrov za urejanje lastnosti aplikacije, da bo naša konfiguracija učinkovita:
Spring definiraMessageSourcevmesniki za dostop do internacionaliziranih informacij.
getMessage(String code, Object[] args, String defaultMessage, Locale locale) getMessage(String code, Object[] args, Locale locale) getMessage(MessageSourceResolvable resolvable, Locale locale)
Ustvarite nov krmilnik in poskusite poklicati drugo datoteko z viri, da vrnete poziv z naslednjo kodo:
Projekt je nameščen na Windows strežniku v kitajščini in ni težav s kitajskimi uporabniki, ki dostopajo do kitajščine. Pri nameščanju na angleško različico Linuxa kitajski uporabniki sprožijo angleški poziv (preberite konfiguracijo angleške datoteke z viri).
Razlog za to smo miNe obstaja nobena nova kitajska datoteka .properties, v tem času program prebere datoteko z viri, ki ustreza trenutnemu sistemskemu jeziku, in če je ni mogoče ponovno prebrati, ne bo mogel prebrati nobene konfiguracije identificiranih lastnosti datotek。 Ko projekt objavimo v sistemu Linux English, čeprav program ne more prebrati kitajske konfiguracije, prebere konfiguracijsko datoteko _en.properties, zato vmesnik vrne kitajski poziv.
Rešitev, okoljeFallbackToSystemLocalenapačno, koda je naslednja:
(Konec)
|