Mi informacion de contacto
Correo[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Resolver problemas de internacionalización y localización en Spring Boot
Hola a todos, soy el editor de Weizhuan Taoke System 3.0 y también soy un programador que no usa calzoncillos largos en invierno, ¡pero aún así tiene que estar fresco en climas fríos!
Descripción general de la internacionalización y la localización
La internacionalización (i18n para abreviar) y la localización (l10n para abreviar) son consideraciones muy importantes al desarrollar aplicaciones para usuarios globales. La internacionalización se refiere al diseño e implementación de productos de software para que puedan adaptarse a las necesidades de diferentes idiomas y hábitos culturales; la localización se basa en la internacionalización y adaptación según regiones o hábitos lingüísticos específicos para brindar una experiencia más amigable para el usuario.
En Spring Boot, la internacionalización y localización se logran principalmente a través de archivos de recursos y soporte relacionado proporcionado por Spring. Primero veamos cómo configurar y usar estas funciones.
En un proyecto Spring Boot, puede utilizar archivos de propiedades (*.properties) o archivos YAML para definir información de texto en diferentes idiomas. Normalmente, crearemos un archivo de recursos correspondiente para cada idioma, como mensajes.properties (archivo predeterminado), mensajes_en.properties (inglés), mensajes_zh_CN.properties (chino simplificado), etc.
Archivo de recursos de muestra mensajes.properties:
greeting.message=Welcome to our application!
button.submit=Submit
label.username=Username
label.password=Password
En Spring Boot, paseMessageSource
yLocaleResolver
Cargar y analizar archivos de recursos en diferentes idiomas y adaptarlos según la configuración regional del usuario.
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;
}
}
En un controlador o servicio, paseMessageSource
Para obtener información de texto en una configuración regional específica.
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);
}
}
Además de la configuración y el uso básicos, los efectos de internacionalización y localización se pueden optimizar aún más de las siguientes maneras:
Este artículo presenta cómo resolver problemas de internacionalización y localización en proyectos Spring Boot y lograr una adaptación regional y en varios idiomas mediante la configuración de archivos de recursos, utilizando el soporte de internacionalización proporcionado por Spring y las mejores prácticas. Estas tecnologías y métodos ayudan a los desarrolladores a crear aplicaciones amigables y profesionales para usuarios globales.
Producido por el editor de Micro-earning Taoke System 3.0, debe ser un producto de alta calidad. ¡Indique la fuente al reimprimir!