- 浏览: 748037 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (419)
- 杂软粉墨 (2)
- 创意灵感 (3)
- 经验记录 (137)
- 开源轨迹 (2)
- sip-communicator (2)
- 闲侃杂谈 (8)
- 问题交流 (24)
- 概念模式 (32)
- 难点备案 (5)
- JwChat (1)
- 中国象棋 (1)
- 教育探索 (6)
- 英语研究 (58)
- 星际争霸 (1)
- 电信知识 (1)
- 软件架构 (3)
- 哲学探索 (26)
- 算法灵魂 (8)
- 近视探索 (6)
- 数学数学 (3)
- 牛角钻尖 (23)
- 至强文言 (3)
- 数据结构 (1)
- 宇宙物理 (2)
- 网络架构 (3)
- 游戏领域 (4)
- 图形处理 (2)
- 修炼之路 (8)
- 读书天地 (20)
- 编解乱码 (2)
- 概念探索 (8)
- 格物致知 (1)
- 其它语言 (1)
- 测试领域 (3)
- 文化风流 (1)
- JQuery (1)
- 網頁領域 (1)
- Unix/Linux (1)
- Inside JVM (1)
- 异常分析 (1)
最新评论
-
suyujie:
引用
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
iamzhoug37:
您能说一下"局部变量不受文本顺序限制" 是 ...
声明前为什么能赋值却不能输出,都是使用
import java.util.ResourceBundle; public class Test { public static void main(String args[]) { ResourceBundle.getBundle("openfire_i18n"); } }
先看上述代码运行结果,如果没有做任何额外设置,就会报:
Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name openfire_i18n, locale zh_CN
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1427)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1250)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:705)
at Test.main(Test.java:6)
表示找不到资源,其实是没有设定好寻找资源的路径,也就是ClassPath,那为什么会是ClassPath呢?
我们知道,这里getBundle相当于
getBundle(baseName, Locale.getDefault(), this.getClass().getClassLoader());
它是有利用默认的Locale和ClassLoader的,而这个ClassLoader恰恰有与ClassPath绑定,看下文:
You can certainly set any system properties you want at any point of time. The question is, will it have any effect?
In the case of classpath, the answer is NO. The system class loader is initialized at a very early point in the
startup sequence. It copies the classpath into its own data structures, and the classpath property is not read again. Changing it affect nothing in the system.
但现在问题来了,ClassLoader的doc解释中我并没有找到ClassPath相关的,看Class类:
public ClassLoader getClassLoader() { ClassLoader cl = getClassLoader0(); if (cl == null) return null; SecurityManager sm = System.getSecurityManager(); if (sm != null) { ClassLoader ccl = ClassLoader.getCallerClassLoader(); if (ccl != null && ccl != cl && !cl.isAncestor(ccl)) { sm.checkPermission(SecurityConstants.GET_CLASSLOADER_PERMISSION); } } return cl; }
可见,应该是在native方法getClassLoader0中实现的,将ClassPath信息纳入搜寻动作中
发表评论
-
RuntimeException为啥不用声明抛出?
2012-11-13 15:04 7466异常,错误都是同一种父类:java.lang.Throwabl ... -
why null is allocated on java stack
2012-06-05 11:45 1191提问: 恩。。。俺的意思是, String str = n ... -
关于Java 泛型 ?extends T 的问题
2012-05-21 11:05 4361http://topic.csdn.net/u/2012051 ... -
HashSet的contains方法de解释是不是有问题
2011-02-20 22:27 3269first of all, exhibits the code ... -
hashcode中选择31因子的原因
2010-12-24 13:57 1481源自<<effective java 2nd> ... -
为什么AnonymousInnerClass只能访问final型非同一方法局部变量
2010-09-13 09:39 1447import java.io.IOException; im ... -
URLConnection访问servlet无反应
2010-07-26 09:28 2678这样完整的回路是ok的 客户端 import jav ... -
This is how scientists see the world
2010-07-14 15:36 1014有些东西不清楚,比如右上角什么东东,中间那个看似压强C, ... -
接口能描述成has-a吗
2010-07-10 10:19 1335接口has a什么呢? 如果说接口当作具备某种能力来用,比如X ... -
ArrayList,Vector线程安全性测试
2010-06-18 09:43 3214import java.util.ArrayList; im ... -
SortedSet去重
2010-06-13 17:06 1337import java.util.Iterator; imp ... -
这个静态内部类实现的单例是迟加载且线程安全的吗?
2010-05-28 13:10 1633public class JiveProperties { ... -
double-checked locking实现的单例模式之volatile
2010-05-26 17:23 3512private volatile static Singlet ... -
死锁的例子描述对吗
2010-05-10 11:20 1105public class Deadlock { stati ... -
java中Adapter是什么概念
2010-04-06 11:30 4945Adapter乃适配器, ... -
编码转换会丢失信息吗
2010-03-09 13:13 1256编码转换会丢失信息吗? 这是个命题,根 ... -
文本文件在系统中的存储与展现方式
2010-02-04 09:38 1136碰到了一个问题,同样的一个properties ... -
servlet如何实现多线程访问同一个实例的多个service方法
2009-12-09 11:22 1625如题,这是我现在想的一个问题,暂存于此,它同一个方法的 ... -
构造方法是静态的吗?
2009-12-03 15:13 1435public class Test { private ... -
关于JTextPane读取RTF多出一行的问题
2009-11-11 11:20 2468代码如下: import java.io.FileInput ...
相关推荐
java.util.ResourceBundle使用详解
Java.util包是Java标准库中的核心包之一,它包含了大量用于日常编程的工具类和接口。这个包在Java 2版本中得到了显著增强,引入了许多重要的数据结构和算法,为Java程序员提供了更丰富的功能。 首先,Java.util包中...
### Java的.awt包和.java.util包的区别 #### Java.util包详解 Java.util包是一个非常重要的标准库之一,其中包含了大量有用的类和接口,为开发者提供了丰富的功能。此包中的类和接口可以分为以下几大类别: 1. **...
在Java中,`java.util.MissingResourceException`是当尝试从`ResourceBundle`中获取一个不存在的资源时抛出的异常。`ResourceBundle`用于管理应用的多语言支持,例如,通过加载.properties文件来提供不同的字符串...
private static ResourceBundle bundle = ResourceBundle.getBundle("cardBin"); private static Map, String> bankName = new HashMap(); static{ bankName.put("ABC", "中国农业银行"); bankName.put(...
Java util包中还提供了许多其它有用的类,例如 BitSet类、 Dictionary类、 EventObject类、 ResourceBundle类、 StringTokenizer类等等。 Java util包提供了许多实用的工具类和数据结构,能够帮助开发者快速地编写...
ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault()); // 示例:获取某个键的值 String value = rb.getString("key"); System.out.println(value); } } ``` #### 三、使用 `java.util...
使用`java.util.ResourceBundle.getBundle()` `ResourceBundle`是Java中用于资源绑定的类,它可以用来获取国际化资源。这里我们使用它来加载`Properties`文件。 **代码示例:** ```java import java.util.Locale...
ResourceBundle rb = ResourceBundle.getBundle("path/to/your/file"); String value = rb.getString("key"); System.out.println(value); } } ``` ### 方法三:使用`java.util.PropertyResourceBundle`类 与...
ResourceBundle bundle = ResourceBundle.getBundle("config"); String value = bundle.getString("key"); System.out.println("Value: " + value); } } ``` 在这里,配置文件名(不包括扩展名)作为`...
10. **国际化与本地化**:`java.text`和`java.util.locale`包提供了支持不同地区和语言的工具,如NumberFormat、DateFormat和ResourceBundle,帮助开发者创建全球化应用。 尽管这个压缩包可能并不完整,但它提供的...
Xml ResourceBundle的实现基于Java的`java.util.ResourceBundle`类和`java.util.PropertyResourceBundle`类的扩展。通过创建自定义的ResourceBundle类,我们可以解析XML文件并加载其中的资源。这个过程通常包括以下...
Java的`java.util`包是Java标准库中最基础且最重要的部分之一,它包含了大量用于处理常用数据结构、事件处理、日期和时间、I/O流、集合框架等的类和接口。这个包为开发者提供了丰富的功能,使得编写Java程序更加便捷...
Java编程语言的基础知识涵盖了许多方面,这里我们主要关注的是`java.util`包,这是一个非常重要的工具类库,提供了丰富的数据结构和实用方法。在Java开发中,`java.util`包几乎无处不在,它包含了处理日期时间、...
- java.util.ResourceBundle#getBundle(),加载资源束。 ***.URL#openConnection(),创建一个URL连接实例。 - java.sql.DriverManager#getConnection(),通过驱动管理器获取数据库连接。 b) 建造者模式(Builder...
- `java.util.ResourceBundle`是Java内置的国际化(i18n)支持,可以用来加载不同语言的资源文件,实现多语种替换。 - `org.springframework.context.MessageSource`是Spring框架提供的,它可以更加灵活地管理多...
- `java.util.ResourceBundle#getBundle()`: 获取资源绑定。 - `java.sql.DriverManager#getConnection()`: 获取数据库连接。 - `java.sql.Connection#createStatement()`: 创建SQL语句。 - `java.sql.Statement#...
9. **国际化和本地化**:Java.util.Locale和ResourceBundle类支持不同地区的语言和文化习惯。 10. **数据库连接**:JDBC(Java Database Connectivity)提供了一套接口和类,如Connection、Statement、ResultSet,...
ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault()); // 获取属性值 System.out.println(rb.getString("welcome")); } } ``` **注意事项:** - 属性文件通常需要放在特定目录下,且遵循...