L'internationalisation de Springboot peut aider les utilisateurs à créer des applications dans différents environnements linguistiques, afin que les applications puissent s'adapter efficacement aux besoins des utilisateurs dans différents contextes linguistiques et culturels.
De plus, l'internationalisation de Springboot peut également faciliter la réutilisation et la maintenance d'applications multilingues, réduisant ainsi le coût du temps de déploiement du système et les coûts de maintenance.
Pour mettre en œuvre l'application internationale Springboot, il y a trois étapes principales.
Définissez des fichiers de ressources internationaux, utilisez des fichiers de format de propriétés, placez différentes ressources de texte multilingues dans différents fichiers et nommez chaque fichier en utilisant les méthodes [locale] + [messages], telles que zh_CN.properties. , en_US.properties, etc. Le contenu du fichier
message.properties peut être vide.
exemple de contenu message.en_US.properties :
40001=Bonjour
message.zh_CN.properties exemple de contenu :
40001=Bonjour
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.i18n.LocaleChangeInterceptor; import org.springframework.web.servlet.i18n.SessionLocaleResolver; import java.util.Locale; @Configuration public class LocaleConfig { @Bean public SessionLocaleResolver localeResolver() { SessionLocaleResolver localeResolver = new SessionLocaleResolver(); localeResolver.setDefaultLocale(Locale.CHINA); return localeResolver; } @Bean public WebMvcConfigurer localeInterceptor() { return new WebMvcConfigurer() { @Override public void addInterceptors(InterceptorRegistry registry) { LocaleChangeInterceptor localeInterceptor = new LocaleChangeInterceptor(); localeInterceptor.setParamName("lang"); registry.addInterceptor(localeInterceptor); } }; } }
application.properties
#i18n spring.messages.basename=i18n.messages spring.messages.cache-duration=3600 spring.messages.encoding=UTF-8
Ajoutez le contenu suivant à application.yml
spring: messages: basename: i18n/messages
L'internationalisation de Springboot est implémentée via un bean appelé "messageSource".
import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.MessageSource; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/test") public class TestControler { @Autowired private MessageSource messageSource; @GetMapping("/hello") public Map<Object, Object> test() { Map<Object, Object> result = new HashMap<Object, Object>(); result.put("code", 40001); result.put("msg", messageSource.getMessage("40001", null, LocaleContextHolder.getLocale())); return result; } }
L'internationalisation de Springboot peut aider les utilisateurs à créer des applications dans différents environnements linguistiques, afin que les applications puissent s'adapter efficacement aux besoins des utilisateurs dans différents contextes linguistiques et culturels.
De plus, l'internationalisation de Springboot peut également faciliter la réutilisation et la maintenance d'applications multilingues, réduisant ainsi le coût du temps de déploiement du système et les coûts de maintenance. Pour implémenter l’application internationale Springboot, il y a trois étapes principales.
1. Définir des fichiers de propriétés internationaux : pour mettre en œuvre l'internationalisation de Springboot, vous devez d'abord préparer une série de fichiers de propriétés internationaux, y compris des informations sur la langue et la région.
2. Enregistrez les ressources de messages internationalisées : enregistrez les informations de langue et de région dans le fichier de propriétés dans l'application Springboot et spécifiez les valeurs par défaut afin que vous puissiez accéder rapidement et efficacement aux ressources de propriétés associées lors de l'expansion vers plusieurs langues.
3. Définir des fichiers de bundle multilingues : combinez les fichiers de propriétés d'internationalisation définis avec l'application pour former un fichier de bundle multilingue afin que la version linguistique de l'application puisse être ajustée à temps lorsque l'utilisateur sélectionne une langue différente.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!