`
guanxi
  • 浏览: 41502 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring-boot 多语言的处理

 
阅读更多

Spring-boot 实现多语言切换,很简单:

 

加入一个配置类就可以

package net.watermelon;

import java.util.Locale;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.LocaleResolver;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.i18n.LocaleChangeInterceptor;
import org.springframework.web.servlet.i18n.SessionLocaleResolver;


/**
 * 设置切换语言的功能
 * @author samsung
 *
 */
@Configuration
@EnableAutoConfiguration
@ComponentScan
public class Application extends WebMvcConfigurerAdapter {
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}

	@Bean
	public LocaleResolver localeResolver() {
		SessionLocaleResolver slr = new SessionLocaleResolver();
		slr.setDefaultLocale(Locale.SIMPLIFIED_CHINESE);
		return slr;
	}

	@Bean
	public LocaleChangeInterceptor localeChangeInterceptor() {
		LocaleChangeInterceptor lci = new LocaleChangeInterceptor();
		lci.setParamName("lang");
		return lci;
	}

	@Override
	public void addInterceptors(InterceptorRegistry registry) {
		registry.addInterceptor(localeChangeInterceptor());
	}
}

 

   在页面上,如下的切换方式:

 

        

    <a href="?lang=en_US" > 英语</a>
        <a href="?lang=zh_CN" > 中文</a>

   点击以后切换 缺省的语言。

 

2
1
分享到:
评论
1 楼 ljs1592 2016-11-16  
这是目前找到的最方便又简介的方法了,感谢分享。为什么会有人踩的呢?

相关推荐

    spring-boot-samples-master

    7. **国际化**:"spring-boot-sample-i18n"解释了如何实现多语言支持,使用Spring Boot的messageSource机制。 8. **WebSocket**:"spring-boot-sample-websocket"展示了如何在Spring Boot中实现WebSocket通信,用于...

    spring-boot源码

    10. **国际化的支持**:Spring Boot通过`MessageSource`支持多语言,配置在`spring-boot-autoconfigure`模块中。`@MessageSource`注解用于加载资源文件,如`messages.properties`。 11. **日志系统**:Spring Boot...

    spring-boot-reference-zh

    12. **国际化的支持(i18n)**:Spring Boot 提供了处理多语言的工具,如消息源(MessageSource)和资源包(Resource Bundle)。 13. **事件驱动和消息传递**:通过 Spring Integration 和 AMQP 支持消息队列(如 ...

    spring-boot-web.zip

    本篇将深入探讨如何在Spring Boot应用中实现语言切换功能,以满足多语言环境下的用户需求。 标题中的"spring-boot-web.zip"可能是一个包含Spring Boot Web项目的压缩包,这个项目通常包含了用于构建Web应用程序的...

    spring-boot-reference-guide-zh.pdf

    了解 Spring Boot 的开发者,通常需要掌握 Spring 框架的基础知识、Maven 或 Gradle 等构建工具,以及 Java 编程语言。对于初学者而言,通过 Spring Boot 官方文档的指导可以快速上手 Spring Boot 开发。而对于有...

    spring-boot-reference-guide-zh-中文, spring-boot参考指南

    - **国际ization (i18n)**:支持多语言环境。 9. **部署** - **Fat JAR**:打包所有依赖为单一可执行JAR,方便部署。 - **Docker**:将Spring Boot应用容器化,便于云环境部署。 总之,《Spring Boot参考指南》...

    spring-boot html thymeleaf

    4. **国际化**:Thymeleaf 可以轻松处理多语言,通过 `th:text="#{message.key}"` 获取相应的翻译。 5. **模板布局**:Thymeleaf 支持模板布局,通过 `th:replace` 或 `th:insert` 实现页面的复用和组合。 在 ...

    基于spring-boot实现自动化配置的支付对接.zip

    让你真正做到一行代码实现支付聚合,让你可以不用理解支付怎么对接,只需要专注你的业务 全能第三方支付对接pay-spring-boot-starter开发工具包 开发工具在软件开发生命周期中扮演着至关重要的角色,它们旨在简化...

    spring-boot-1.5.19.RELEASE.tar.gz

    在 Linux 系统中,Spring Boot 可以无缝运行,因为它是基于 Java 开发的,而 Java 是跨平台的语言。 标题中的 "spring-boot-1.5.19.RELEASE.tar.gz" 指的是 Spring Boot 的一个特定版本,这里是 1.5.19 版本的发布...

    spring-boot-reference.pdf

    【标签】中的“spring boot 2.1.1 java”表明这份文档是专门针对使用Java语言的Spring Boot 2.1.1版本。 【部分内容】中出现的片段提供了文档的目录结构和部分章节内容。从这里我们可以了解到文档结构和部分知识点...

    spring-boot 集成hibernate

    在本文中,我们将深入探讨如何将Spring Boot与Hibernate集成,并使用Druid作为数据库连接池。首先,我们需要理解这三个核心组件: 1. **Spring Boot**: 是一个由Pivotal团队提供的开源框架,它简化了创建独立的、...

    spring-boot2.0多数据源

    Spring Boot 2.0 多数据源是在开发...综上所述,Spring Boot 2.0多数据源功能允许开发者灵活地管理和切换多个数据库,这在处理复杂分布式系统时非常有用。通过合理的配置和编程,可以实现高效且可靠的多数据库操作。

    快速搭建SpringBoot工具spring-boot-plus-master.zip

    9. **国际化支持**:SpringBootPlus支持多语言环境,通过i18n资源文件,可以轻松实现应用程序的国际化。 10. **性能监控**:集成Spring Boot Actuator,提供健康检查、指标展示、审计跟踪等性能监控功能,帮助...

    spring-boot-api-project-seed.zip

    【描述】"spring-boot-examples" 暗示这可能是一个包含多个Spring Boot应用实例的集合,而"spring-boot-api-project-seed"可能是其中之一,专注于API的开发。Spring Boot是Java生态系统中的一个流行框架,它简化了...

    干净可用spring-boot的项目

    11. **国际化(i18n)**:通过`messages.properties`文件支持多语言,可以轻松实现应用的国际化。 12. **日志**:Spring Boot默认使用Logback或Log4j2进行日志记录,并提供了简单的日志级别配置。 以上就是关于...

    spring-boot-2.7.0.tar.gz源码

    通过`spring-boot-starter-i18n`,可以轻松地实现多语言支持。 源码阅读和学习Spring Boot 2.7.0的源码,可以帮助我们深入理解其内部工作原理,包括自动配置的实现、各种starter的构建以及框架如何与Spring生态...

    spring-boot-html-xxxxxx

    7. **国际化支持**:Spring Boot可以通过message.properties文件提供多语言支持。在HTML页面中,我们可以使用`th:text="#{greeting}"`来引用国际化消息。 8. **安全控制**:Spring Boot集成了Spring Security,可以...

    spring-boot-mybatis-plus 一套打通 有注释 打开就可使用

    标签中,“spring”、“spring boot”和“java”表明了项目的基础技术栈,这些都是基于Java语言的,尤其是Spring生态的一部分。“后端”标签则表示这是针对服务器端开发的项目,而非前端。“开发语言”标签暗示了...

    spring-boot-中文参考指南

    根据提供的文件信息,我们可以整理出一份关于 Spring Boot 的详细知识点概览。以下内容将围绕给定的标题、描述以及部分文本展开,旨在提供一个全面且深入的理解。 ### Spring Boot 中文参考指南 #### 一、Spring ...

    graphql+spring-boot demo

    7. **bff-graphql-spring-boot**:这个文件名可能指的是“后端-for-前端”(Backend For Frontend)的概念,强调GraphQL作为统一接口,为多个前端应用程序提供数据。 8. **部署和测试**:项目完成后,可以使用...

Global site tag (gtag.js) - Google Analytics