在Struts里是这么处理的:
打开struts-core包里的org.apache.struts.util.PropertyMessageResources类文件,当然是源代码文件啦。
protected synchronized void loadLocale(String localeKey) {
if (log.isTraceEnabled()) {
log.trace("loadLocale(" + localeKey + ")");
}
// Have we already attempted to load messages for this locale?
if (locales.get(localeKey) != null) {
return;
}
locales.put(localeKey, localeKey);
// Set up to load the property resource for this locale key, if we can
String name = config.replace('.', '/');
if (localeKey.length() > 0) {
name += ("_" + localeKey);
}
name += ".properties";
InputStream is = null;
Properties props = new Properties();
// Load the specified property resource
if (log.isTraceEnabled()) {
log.trace(" Loading resource '" + name + "'");
}
ClassLoader classLoader =
Thread.currentThread().getContextClassLoader();
if (classLoader == null) {
classLoader = this.getClass().getClassLoader();
}
is = classLoader.getResourceAsStream(name);
if (is != null) {
try {
props.load(is);
} catch (IOException e) {
log.error("loadLocale()", e);
} finally {
try {
is.close();
} catch (IOException e) {
log.error("loadLocale()", e);
}
}
if (log.isTraceEnabled()) {
log.trace(" Loading resource completed");
}
} else {
if (log.isWarnEnabled()) {
log.warn(" Resource "+name+" Not Found.");
}
}
// Copy the corresponding values into our cache
if (props.size() < 1) {
return;
}
synchronized (messages) {
Iterator names = props.keySet().iterator();
while (names.hasNext()) {
String key = (String) names.next();
if (log.isTraceEnabled()) {
log.trace(" Saving message key '"
+ messageKey(localeKey, key));
}
messages.put(messageKey(localeKey, key), props.getProperty(key));
}
}
}
----------------------------------------------------------------网摘-----------------------------------
--------------------------------1。使用java.util.Properties类的load()方法示例:
InputStreamin=lnewBufferedInputStream(newFileInputStream(name));
Propertiesp=newProperties();
p.load(in);
2。使用java.util.ResourceBundle类的getBundle()方法示例:
ResourceBundlerb=ResourceBundle.getBundle(name,Locale.getDefault());
3。使用java.util.PropertyResourceBundle类的构造函数示例:
InputStreamin=newBufferedInputStream(newFileInputStream(name));
ResourceBundlerb=newPropertyResourceBundle(in);
4。使用class变量的getResourceAsStream()方法示例:
InputStreamin=JProperties.class.getResourceAsStream(name);
Propertiesp=newProperties();
p.load(in);
5。使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法示例:
InputStreamin = JProperties.class.getClassLoader().getResourceAsStream(name);
Propertiesp = newProperties();
p.load(in);
6。使用java.lang.ClassLoader类的getSystemResourceAsStream()静态方法示例:
InputStreamin=ClassLoader.getSystemResourceAsStream(name);
Propertiesp=newProperties();
p.load(in);
补充
Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法示例:
InputStreamin=context.getResourceAsStream(path);
Propertiesp=newProperties();
p.load(in);
分享到:
相关推荐
java 日志出入log4j配置文件(完整版和精简版) log4j.properties(完整版) log4j.properties(精简版)
jquery.i18n.properties-1.0.9.js 下载
resolver-status.properties
jquery.i18n.properties-min-1.0.9 主要用于国际化和读取properties文件
log4j2.component.properties
path : $.contextPath+"/i18n/"+i18nLanguage+"/", //资源文件路径 mode : 'map', //用Map的方式使用资源文件中的值 language : i18nLanguage, cache:false, //指定浏览器是否对资源文件进行缓存,默认false ...
Weblogic中MIME的默认配置文件 文件名称:domain/config/mimemappings.properties 格式如下: js=text/javascript 个人觉得设置完后,Weblogic可能要重启一下。
jquery.i18n.properties.min.js
plugin-descriptor.properties
现在的版本还是很多年前的 jquery.i18n.properties-1.0.9,现在最新的是1.2.2,很好用 jQuery.i18n.properties的API只有几个:jQuery.i18n.properties()、jQuery.i18n.prop()、jQuery.i18n.browserLang(),当然也...
jquery.i18n.properties-min-1.0.9.js前端国际化文件 jquery插件,实现国际化
本文侧重于了解自定义properties文件,以及properties中的数据格式,在gradle中如何使用等知识点。 一、概述 在Android Studio 创建一个项目的时候,rootProject下面会生成gradle.properties和local.properties文件...
log4j.properties log4j log4j日志保存到邮件 log4j保存到数据库
Log4j.jar包,和log4j.properties属性文件打包下载.
ssm框架整合,详细记录日志的配置文件,log4j.properties。 ssm框架整合,详细记录日志的配置文件,log4j.properties。
apache+tomcat集群配置 tomcat 中workers.properties配置说明
在Linux上安装jsp运行环境时,会整合apache和tomcat,其中需要的两个文件,wokers2.properties和jk2.properties 就在此处
activiti和springboot整合只使用application.properties配置文件,解决了jdbc长时间待机连接被收回报错。使用springProcessEngineConfiguration对activiti管理
如果安装遇到这个,可以将这个OCS4J.properties.tmp该名为OCS4J.properties拷贝到提示的路径,如D:\oracle \ora92\ocs4j\admin然后点击retry即可。 在自己创建的OCS4J.properties文件中写入以下内容: # ...