le mie informazioni di contatto
Posta[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Risoluzione dei problemi di internazionalizzazione e localizzazione in Spring Boot
Ciao a tutti, sono l'editore di Weizhuang Taoke System 3.0 e sono anche un programmatore che non indossa mutandoni in inverno, ma deve comunque essere aggraziato quando fa freddo!
Panoramica su internazionalizzazione e localizzazione
L'internazionalizzazione (i18n in breve) e la localizzazione (l10n in breve) sono considerazioni molto importanti quando si sviluppano applicazioni per utenti globali. L'internazionalizzazione si riferisce alla progettazione e all'implementazione di prodotti software in modo che possano adattarsi alle esigenze di diverse lingue e abitudini culturali. La localizzazione si basa sull'internazionalizzazione e sull'adattamento in base a regioni o abitudini linguistiche specifiche per fornire un'esperienza più user-friendly.
In Spring Boot, l'internazionalizzazione e la localizzazione vengono ottenute principalmente tramite file di risorse e il relativo supporto forniti da Spring. Diamo prima un'occhiata a come configurare e utilizzare queste funzionalità.
In un progetto Spring Boot è possibile utilizzare file di proprietà (*.properties) o file YAML per definire informazioni di testo in diverse lingue. Normalmente, creeremo un file di risorse corrispondente per ciascuna lingua, come messaggi.properties (file predefinito), messaggi_en.properties (inglese), messaggi_zh_CN.properties (cinese semplificato), ecc.
File di risorse di esempio message.properties:
greeting.message=Welcome to our application!
button.submit=Submit
label.username=Username
label.password=Password
In Spring Boot, passaMessageSource
ELocaleResolver
Per caricare e analizzare file di risorse in diverse lingue e adattarli in base alle impostazioni locali dell'utente.
package cn.juwatech.localization;
import cn.juwatech.Application;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.MessageSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.support.ReloadableResourceBundleMessageSource;
import org.springframework.web.servlet.LocaleResolver;
import org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver;
import java.util.Locale;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Bean
public LocaleResolver localeResolver() {
AcceptHeaderLocaleResolver resolver = new AcceptHeaderLocaleResolver();
resolver.setDefaultLocale(Locale.US); // 设置默认Locale
return resolver;
}
@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("classpath:messages");
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
}
In un controller o servizio, passaMessageSource
Per ottenere informazioni di testo in una locale specifica.
package cn.juwatech.localization;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.MessageSource;
import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GreetingController {
@Autowired
private MessageSource messageSource;
@GetMapping("/greeting")
public String greeting() {
Locale locale = LocaleContextHolder.getLocale();
return messageSource.getMessage("greeting.message", null, locale);
}
}
Oltre alla configurazione e all'utilizzo di base, gli effetti dell'internazionalizzazione e della localizzazione possono essere ulteriormente ottimizzati nei seguenti modi:
Questo articolo illustra come risolvere i problemi di internazionalizzazione e localizzazione nei progetti Spring Boot e ottenere un adattamento multilingue e regionale configurando file di risorse, utilizzando il supporto per l'internazionalizzazione fornito da Spring e le best practice. Queste tecnologie e metodi aiutano gli sviluppatori a creare applicazioni amichevoli e professionali per utenti globali.
Prodotto dall'editore di Micro-earning Taoke System 3.0, deve essere un prodotto di alta qualità. Si prega di indicare la fonte in caso di ristampa!