http://www.javaworld.com/javaworld/javaqa/2003-08/01-qa-0808-property.html?
You can get at some/pkg/resource.properties
programmatically from your Java code in several ways. First, try:
ClassLoader.getResourceAsStream ("some/pkg/resource.properties");
Class.getResourceAsStream ("/some/pkg/resource.properties");
ResourceBundle.getBundle ("some.pkg.resource");
Additionally, if the code is in a class within a some.pkg
Java package, then the following works as well:
Class.getResourceAsStream ("resource.properties");
Behavioral differences
Method |
Parameter format |
Lookup failure behavior |
Usage example |
ClassLoader. getResourceAsStream() |
"/"-separated names; no leading "/" (all names are absolute) |
Silent (returns null ) |
this.getClass().getClassLoader() .getResourceAsStream ("some/pkg/resource.properties") |
Class. getResourceAsStream() |
"/"-separated names; leading "/" indicates absolute names; all other names are relative to the class's package |
Silent (returns null ) |
this.getClass() .getResourceAsStream ("resource.properties") |
ResourceBundle. getBundle() |
"."-separated names; all names are absolute; .properties suffix is implied |
Throws unchecked
java.util.MissingResourceException |
ResourceBundle.getBundle ("some.pkg.resource") | |