Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 9087|Atbildi: 0

[Avots] Spring Boot MessageSource Internacionalizēto valodu bedre

[Kopēt saiti]
Publicēts 2022-1-27 14:52:03 | | | |
Internacionalizācija, ko sauc arī par i18n, kāpēc šis nosaukums? Tā kā internacionalizācija angļu valoda ir internacionalizācija, starp i un n ir 18 burti, tāpēc to sauc par i18n. Ja mūsu lietojumprogramma ir internacionalizēta, to var viegli pārslēgt dažādās valodu vidēs, visbiežāk ir pārslēgšanās starp ķīniešu un angļu valodu, un internacionalizācijas funkcija ir arī diezgan izplatīta.

Piemēram, nosūtot konkrētu pieprasījumu, galvenē iestatiet atslēgas-vērtības pāri: "Accept-Language":"zh", izmantojot atbilstošo vērtību Accept-Language, serveris var izlemt, kuru reģiona valodu izmantot, atrast atbilstošo resursu failu, formatēt to un atgriezt klientam.

Izveidojiet jaunu Spring Boot projektu, izveidojiet i18n failu resursu mapē un izveidojiet jaunu konfigurācijas failu šajā mapē saskaņā ar formātu "Valodas saīsinājumu tabula", kā parādīts zemāk redzamajā attēlā:




ziņojums.rekvizīti

message_en.properties

Neaizmirstiet pievienot konfigurācijas parametrus, lai rediģētu application.properties, lai padarītu mūsu konfigurāciju efektīvu:

Pavasaris definēZiņojuma avotssaskarnes piekļuvei internacionalizētai informācijai.

getMessage(Virknes kods, Objekts[] argumenti, Virknes defaultMessage, Lokalizācijas lokalizācija)
getMessage(Virknes kods, Objekta[] argumenti, Lokalizācijas lokalizācija)
getMessage(MessageSourceResolvable atrisināms, lokalizācijas lokalizācija)



Izveidojiet jaunu kontrolieri un mēģiniet izsaukt citu resursu failu, lai atgrieztu uzvedni ar šādu kodu:



Projekts tiek izvietots Windows serverī ķīniešu valodā, un nav problēmu ar ķīniešu lietotājiem, kas piekļūst ķīniešu valodai. Izvietojot Linux angļu valodas versiju, ķīniešu lietotāji parādīs angļu valodas uzvedni (izlasiet angļu valodas resursu faila konfigurāciju).

Iemesls tam ir mūsu dēļVispār nav jauna ķīniešu .properties faila, šobrīd programma nolasīs resursu failu, kas atbilst pašreizējai sistēmas valodai, un, ja to nevar lasīt vēlreiz, tas nevarēs lasīt nevienu identificēto rekvizītu faila konfigurāciju。 Publicējot projektu Linux angļu sistēmā, lai gan programma nevar nolasīt ķīniešu konfigurāciju, tā nolasīs _en.properties konfigurācijas failu, tāpēc saskarne atgriež ķīniešu uzvedni.

Risinājums, iestatīšanaFallbackToSystemLocalefalse, kods ir šāds:

(Beigas)





Iepriekšējo:Praktiska izmantošana cAdvisor, lai apkopotu Docker konteineru metriku
Nākamo:Priekšgala JS pārvērš blobus virknēs
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com