Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 9087|Odpowiedź: 0

[Źródło] Spring Boot MessageSource Pustka języków umiędzynarodowonych

[Skopiuj link]
Opublikowano 27.01.2022, 14:52:03 | | | |
Internacjonalizacja, zwana też i18n, dlaczego ta nazwa? Ponieważ internacjonalizacja angielski to internacjonalizacja, między i a n jest 18 liter, dlatego nazywa się to i18n. Jeśli nasza aplikacja jest umiędzynarodowiona, można ją łatwo przełączać w różnych środowiskach językowych, najczęściej przełączana jest zmiana między chińskim a angielskim, a funkcja internacjonalizacji jest również dość powszechna.

Na przykład, wysyłając konkretne żądanie, ustaw parę klucz-wartość w nagłówku: "Accept-Language":"zh", a przez odpowiednią wartość Accept-Language serwer może zdecydować, którego języka regionu użyć, znaleźć odpowiedni plik zasobu, sformatować go i zwrócić klientowi.

Stwórz nowy projekt Spring Boot, stwórz plik i18n w folderze resources i utwórz nowy plik konfiguracyjny w tym folderze zgodnie z formatem "Language Abbreviation Table", jak pokazano na poniższym rysunku:




message.properties

message_en. własności

Pamiętaj, aby dodać parametry konfiguracyjne do edycji property.application, aby nasza konfiguracja była skuteczna:

Spring definiujeMessageSourceinterfejsy do dostępu do informacji międzynarodowych.

getMessage(Kod ciągu ciągów, Object[] args, String defaultMessage, Locale locale)
getMessage(String code, Object[] args, locale locale)
getMessage(MessageSourceResolvable resolvable, Locale locale)



Stwórz nowy kontroler i spróbuj wywołać inny plik zasobu, aby zwrócić prompt z następującym kodem:



Projekt jest wdrażany na serwerze Windows w języku chińskim i nie ma problemu z chińskimi użytkownikami, którzy korzystają z chińskiego. Podczas wdrażania na angielską wersję Linuksa chińscy użytkownicy wyświetlą angielski komunikat (przeczytaj konfigurację pliku zasobów angielskiego).

Powodem tego jesteśmy myNie ma w ogóle nowego chińskiego pliku .properties, w tym momencie program odczyta plik zasobu odpowiadający obecnemu językowi systemowemu i jeśli nie będzie można go ponownie odczytać, nie będzie w stanie odczytać żadnej konfiguracji pliku z zidentyfikowanymi właściwościami。 Gdy publikujemy projekt do systemu Linux English, chociaż program nie może odczytać chińskiej konfiguracji, odczytuje plik konfiguracyjny _en.properties, więc interfejs zwraca chiński prompt.

Rozwiązanie, miejsce akcjiFallbackToSystemLocalefałsz, kod jest następujący:

(Koniec)





Poprzedni:Praktyczne wykorzystanie cAdvisor do zbierania metryk kontenerów Docker
Następny:JS na początku konwertuje bloby na stringi
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com