Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 9087|Svare: 0

[Kilde] Spring Boot MessageSource Gropen av internasjonaliserte språk

[Kopier lenke]
Publisert 27.01.2022 14:52:03 | | | |
Internasjonalisering, også kalt i18n, hvorfor dette navnet? Fordi internasjonaliseringsengelsk er internasjonalisering, er det 18 bokstaver mellom i og n, så det kalles i18n. Hvis applikasjonen vår er internasjonalisert, kan den enkelt byttes i ulike språkmiljøer, den vanligste er byttet mellom kinesisk og engelsk, og internasjonaliseringsfunksjonen er også ganske vanlig.

For eksempel, når du sender en spesifikk forespørsel, sett et nøkkel-verdi-par i headeren: "Accept-Language":"zh", kan serveren gjennom Accept-Language tilsvarende verdi bestemme hvilket regionspråk som skal brukes, finne den tilsvarende ressursfilen, formatere den og returnere den til klienten.

Opprett et nytt Spring Boot-prosjekt, lag en i18n-fil under ressursmappen, og lag en ny konfigurasjonsfil under denne mappen i henhold til "Language Abbreviation Table"-formatet, som vist i figuren under:




melding.egenskaper

message_en.egenskaper

Husk å legge til konfigurasjonsparametere for å redigere application.properties for å gjøre konfigurasjonen effektiv:

Spring definererMessageSourcegrensesnitt for tilgang til internasjonalisert informasjon.

getMessage(Strengkode, Objekt[] args, Streng defaultMessage, Locale locale)
getMessage(Strengkode, Objekt[] args, Locale locale)
getMessage(MessageSourceResolvable resolvable, Locale locale)



Opprett en ny kontroller og prøv å kalle en annen ressursfil for å returnere en prompt med følgende kode:



Prosjektet er distribuert under en Windows-server på kinesisk, og det er ikke noe problem med kinesiske brukere som får tilgang til kinesisk. Når man distribuerer til den engelske versjonen av Linux, vil kinesiske brukere be om en engelsk prompt (les: konfigurasjonen av den engelske ressursfilen).

Grunnen til dette er på grunn av ossDet finnes ingen ny kinesisk .properties-fil i det hele tatt, på dette tidspunktet vil programmet lese ressursfilen som matcher det nåværende systemspråket, og hvis den ikke kan leses igjen, vil det ikke kunne lese noen identifiserte egenskapsfilkonfigurasjoner。 Når vi publiserer prosjektet til Linux English-systemet, selv om programmet ikke kan lese den kinesiske konfigurasjonen, vil det lese konfigurasjonsfilen _en.properties, slik at grensesnittet returnerer den kinesiske prompten.

Løsning, settingFallbackToSystemLocalefeil, koden er som følger:

(Slutt)





Foregående:Praktisk bruk cAdvisor for å samle inn Docker-containermetrikker
Neste:Front-end JS konverterer blobs til strenger
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com