一、先创建一个util类:AppConfigUtil.java
package com.myhexin.utils
import java.util.Locale;
import org.springframework.context.MessageSource;
public final class AppConfigUtil{
private static MessageSource mess;
public static MessageSource getMess(){
return mess;
}
public static void setMessageSource(MessageSource mess) {
AppConfigUtil.mess= mess;
}
public static String getConfig(String key){
return mess.getMessage(key,null,Locale.Root);
}
}
二、xml中配置
<bean id="mess" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<array>
<value>classpath:app-config</value>
<value>classpath:dubbo</value>
</array>
</property>
</bean>
<!--注入-->
<bean id="appconfig" class="com.myhexin.utils.AppConfigUtil">
<property name="mess" ref="mess"/>
</bean>
(或者:@Resource
private MessageSource messageSource; 这种方式注入也可以)
三、程序中获取
String value=AppConfigUtil.getConfig("jdbc.database");
分享到:
相关推荐
2. `MessageSource`:Spring MVC提供`MessageSource`接口用于读取这些资源文件。你可以自定义实现或使用默认的`ResourceBundleMessageSource`。 3. `@Autowired`和`@Qualifier`:在需要使用国际化的类中,可以通过`...
通常,我们会使用`ResourceBundleMessageSource`,这是`MessageSource`的一个实现,它可以读取基于Java的资源包(.properties文件)。配置如下: ```java @Configuration public class MessageSourceConfig { @...
在该Bean中,需要设置basename属性,其值为基本名称加上.properties后缀,Spring将会根据当前用户的区域设置加载对应的属性文件。 3. 使用RequestContext的getMessage方法:在Spring MVC的Controller中,可以使用...
`defaultEncoding`属性设置为`UTF-8`以确保正确读取非ASCII字符。 3. 前台如何切换 在前端,可以通过JavaScript来改变Session中的语言设置。例如,当用户选择一种语言时,可以发送一个Ajax请求到服务器,服务器接收...
可以使用`PropertyPlaceholderConfigurer`来载入属性文件,并在其他地方使用`${database.url}`等方式引用属性值。 #### 11. `CustomEditorConfigurer`的使用 通过`CustomEditorConfigurer`可以注册自定义的`...
2. **Properties属性文件配置**:`PropertyPlaceholderConfigurer` Bean用于读取属性文件,并将其中的值注入到其他Bean的属性中。例如: ```xml <value>conf/sqlmap/jdbc.properties <value>UTF-8 `...
3. **BeanDefinition的载入与解析**:BeanDefinition是Spring容器中Bean的元数据,包含了Bean的所有配置信息,如类名、属性值、初始化方法等。当Spring容器读取XML或注解配置时,会将这些信息转化为BeanDefinition...
7. **优化性能**:为了提高性能,可以考虑使用缓存机制,如Spring的MessageSource,将资源包加载到内存中,减少频繁的磁盘读取。 通过以上步骤,你可以构建一个支持多种语言的Struts应用程序,提供全球化的用户体验...
5. **配置`MessageSource`**:`ReloadableResourceBundleMessageSource`用于读取并缓存多语言属性文件中的文本信息。这里配置了资源文件的基路径为`classpath:resource/message`,这表示所有的语言包文件都放置在`...
如果使用了模板引擎,如Thymeleaf,可以在模板中使用`th:text`属性结合`#{key}`语法引用资源文件中的值。Thymeleaf会自动根据当前的`Locale`查找相应的文本。 6. **自定义拦截器**: 为了在每次请求时自动切换...
首先,JSR 303是一个Java标准规范,定义了一套元数据模型和校验API,用于验证Java对象的属性值。通过这个规范,开发者可以轻松的实现参数校验。在Springboot项目中,通常会引入Hibernate Validator来实现JSR 303的...
这些资源文件通常以`.properties`格式存储,例如`language_en_US.properties`代表美国英语的资源文件,其中包含了键值对,键是消息的标识符,值是对应的语言文本。 ### 2. 国际化配置 #### 2.1 `messageSource` `...
5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP) 6.1. 简介 6.1.1. AOP概念 6.1.2. Spring AOP的功能和目标 6.1.3. AOP代理 6.2. @AspectJ支持 ...
5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP) 6.1. 简介 6.1.1. AOP概念 6.1.2. Spring AOP的功能和目标 6.1.3. AOP代理 6.2. @AspectJ支持 ...
5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 5.4.2.1. 注册用户自定义的PropertyEditor 6. 使用Spring进行面向切面编程(AOP) 6.1. 简介 6.1.1. AOP概念 6.1.2. Spring AOP的功能和目标 ...
- **CRUD操作**:Create(创建)、Read(读取)、Update(更新)、Delete(删除),这些操作可以通过RESTful API来实现。 #### 七、数据转换与格式化 - **数据转换**:通过`@ModelAttribute`注解配合`@Validated`...
5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP) 6.1. 简介 6.1.1. AOP概念 6.1.2. Spring AOP的功能和目标 6.1.3. Spring的AOP代理 6.2. @...
5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP) 6.1. 简介 6.1.1. AOP概念 6.1.2. Spring AOP的功能和目标 6.1.3. Spring的AOP代理 6.2. @...