java.net.URL getResource(String name)方法加载路径和顺序问题

我有两台机器,运行相同的程序,都用java.net.URL getResource(String name)来读取一个.properties的属性文件,当我dbug时发现:一台机器运行程序时去应用程序的路径下加载这个属性文件,而另一台机器去tomcat的发布目录下去加载这个属性文件,这让我很费解,希望好心人能帮我理一下这个问题,小弟不胜感激

0
guohao1949
guohao1949 可能遇到这个问题时有各自的原因,我的原因已经找到,有兴趣可以看一下我的博客解释:http://peryou.iteye.com/admin/blogs/1771124
6 年多之前 回复
guohao1949
guohao1949 哪个API?我就是用java.net.URL getResource("/").getPath()+"/*.properties"来读取的啊 有什么不对的地方吗
6 年多之前 回复
jinnianshilongnian
jinnianshilongnian 你是用哪个API获取的?
6 年多之前 回复
扫码支付0.1元 ×
其他相关推荐
java.net.URL getResource(String name)
URL url = org.Test.class.getResource("");rnSystem.out.println(url);rn上面代码分别放在方法(改方法在别处调用)中和main函数中,方法和main函数在同一个类Test中rn为什么得到的url会不一样呢,和环境有关系么?
java.lang.Class.getResource()这个方法主要是做什么用
查找带有给定名称的资源。查找与给定类相关的资源的规则是通过定义类的 class loader 实现的。此方法委托给此对象的类加载器。如果此对象通过引导类加载器加载,则此方法将委托给 ClassLoader.getSystemResource(java.lang.String)。  在委托前,使用下面的算法从给定的资源名构造一个绝对资源名:  如果 name 以 '/' ('\u002f') 开
各种获取Resource资源的方法
import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; import java.net.URL; import java.net.URLConnection; import java.ni
Java资源加载相对路径和绝对路径
java加载资源的时候相对路径,就是相对本class资源文件的路径,比如:getResourceAsStream("../config.properties"),代表上一级目录下。 绝对路径就是在classPath的绝对路径下查找资源,比如:getResourceAsStream("/config.properties")就是在classpath+/config.properties位置查找...
getResource方法路径参数的不同
1.Thread.currentThread().getContextClassLoader().getResource(name)2.this.getClass.getResource(name)以上两种获取资源的方法,name参数还是有点区别的,网上查询的关于name的资料大概如下:name可以是相对路径也可以是绝对路径,但是目前我发现第一种方法只能通过相对于classPath的路径来获取资源...
java-loadresource.rar
Java加载资源文件的两种方法getResource与getResourceAsStream
java getResource(String name)的问题
class WallNodernrn static final Toolkit TLK=Toolkit.getDefaultToolkit(); //用来将图片读入rn static final Image WallImage=TLK.getImage(WallNode.class.getClassLoader().getResource("Image/Wall/Wall.png")); rnstatic final Image WallImage=TLK.getImage(WallNode.class.getClassLoader().getResource("Image/Wall/Wall.png"));rnrn这是java的一段代码,我的问题是:WallNode.class是什么意思?另外就是WallNode.class.getResource("Image/Wall/Wall.png")和WallNode.class.getClassLoader().getResource("Image/Wall/Wall.png"));有什么不同?希望有经验的回答,不要直接将帮助文档的说明贴上来,谢谢!
Java 资源文件路径详解(getResource)(整理版)
总述获取资源文件的方法说明: `getResourceAsStream ()返回的是inputstream getResource()返回:URL Class.getResource("") 返回的是当前Class这个类所在包开始的为置 Class.getResource("/") 返回的是classpath的位置 getClassLoader().getResou
解决通过this.class.getResource()得到的URL中乱码的问题及源码解析:
问题浮现: 获取这个文件时,打印路径,发现乱码,然后我尝试用JDK的file.encoding编码字符集来把path转成字节数组,在以此字符集解码这个字节数组,发现还是乱码。(原因可以分析源码) String path = PoiUtil.class.getClassLoader().getResource("template/中国.txt").getPath(); Syste...
【JAVA】关于java中 类.class.getResource("/").getPath()获取路径有空格的问题
写了一个web工程,在本地测试正确,但是部署到服务器上就出现错误。原因是读取不到配置文件。 后来从打印出来的文件路径中发现是用java的class.getResource("/").getPath()获取路径的时候,路径中的空格转换成了%20。 在网上查询相关信息,果然将空格转成%20是一个古老的bug,我特意借此记录一下,希望能帮到遇到同样问题的朋友。 Bug ID: 4466485 ge
两个加载fxml文件的方法
JavaFX使用FXMLLoader加载fxml文件。其原理应该与Java.lang.ClassLoader类似,但有很大不同。ClassLoader加载中间代码,在运行环境中生成类对象,而FXMLLoader一方面加载xml格式的文本文件,一方面还要加载由该fxml文件指定的Controller。JavaFX应该建立有一种互动机制,把二者粘合在一起。 一般,使用FXMLLoader加载
Class.getResource()的资源路径问题
在Java中,使用Class.getResource()获取资源时,经常会遇到读取资源文件时的路径问题。 1. 项目结构 2. Class.getResource(String path)说明 //path不以"/"开头:当前类所在的包目录 //path以"/"开头:class path,即当前项目 System.out.println(Main.class.getResource...
获得执行jar的运行路径-使用classloader的getResource方法
在Java处理的文件系统中,目录的表示方式有两种: (1)绝对目录,它以"/"为起始字符,代表从根目录下开始寻找给出的目录,如/c:/java (2)相对路径,它以不带“/”的目录名表示,表示以当前Java程序正在运行的目录作为起始目录来寻找给出的目录。如java /classes。在相对路径中,有一些特定的字符,可以代表特的的目录,比如,“.”代表当前目录,“..”代表当前目
java 类加载器ClassLoader详解(二)——获取资源(getResource)
一、如何获取ClassLoader        参见如下代码: public class ClassLoaderTest { public static void main(String[] args) { //1.通过当前线程获取ClassLoader ClassLoader classLoader1 = Thread.currentThread().getContextClas
java URL java.net.URL类的使用 详细介绍 URL转义 解决URL中文字符
 类 URL 代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,也就是我们常说的域名、浏览器访问地址。 在Java中就是使用URL访问网络资源,获取url对象的相关信息。 下面介绍具体是使用 1.构造方法,一般使用较多的就下面这两个,可以参照api http://www.javaweb.cc/help/JavaAPI1.6/i...
JavaCrawler
public class Test { public static String sendGet(String url, Map<String, String> parameters) { String result=""; BufferedReader in = null;// 读取响应输入流 StringBuffer sb = new StringBuffer();// 存储参数 String params = "";// 编码之后的参数 try { // 编码请求参数 if(parameters.size()==1){ for(String name:parameters.keySet()){ sb.append(name).append("=").append( java.net.URLEncoder.encode(parameters.get(name), "UTF-8")); } params=sb.toString(); }else{ for (String name : parameters.keySet()) { sb.append(name).append("=").append( java.net.URLEncoder.encode(parameters.get(name), "UTF-8")).append("&"); } String temp_params = sb.toString(); params = temp_params.substring(0, temp_params.length() - 1); } String full_url = url + "?" + params; System.out.println(full_url); // 创建URL对象 java.net.URL connURL = new java.net.URL(full_url);
关于java的getResource方法
首先说一个概念,classpath,指的是编译后的class文件、xml、properties等配置文件所在的目录。比如,如果是maven项目,classpath为“项目名/target/classes”,如果是普通项目,可能是”项目名/bin”,或者”项目名/build/classes”等等。 getResource是java.lang.Class的方法,也就是由字节码对象调用。 getRe...
jvm 类加载机制之getResource和getResourceAsStream 使用 和原理解析 (5)
Java中取资源时,经常用到Class.getResource和ClassLoader.getResource,这里来看看他们在取资源文件时候的路径问题。 1 :Class.getResource(String path)使用注意事项和示例 path不以’/'开头时,默认是从此类所在的包下取资源; path 以’/'开头时,则是从ClassPath根下获取; 什么意思呢?看下面这段代码的...
动态规划-矩阵最小路径和
题目描述有一个矩阵map,它每个格子有一个权值。 从左上角的格子开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和。 返回所有的路径中最小的路径和。 给定一个矩阵map及它的行数n和列数m,请返回最小路径和。 求解过程给定一个N*M的矩阵,假定N等于4,M等于4 1 2 3 4 4 8 3 2 6 1 4 5 7 3 7 8现在生成一个大小为N*M的矩阵dp, dp
Class类的方法getResource(String name)中name的意义
如题,求解答,3Q
Java运行命令方式与classpath和getResource之间的关系
本文介绍了Java两种运行方式的区别,classpath的目录组织结构,class类和ClassLoader类的getResource方法的区别 1.Java -jar ***.jar 这种方式必须在jar包中的MANIFEST.MF文件中指定所有运行该jar所需的所有依赖包和资源,例如:Main-Class,Class-Path等。 当使用-jar的方式运行时,会忽略掉参数-classpath和环境变量中classpath,
getResource的路径问题
// URL url = Test.class.getClassLoader().getResource("tinyioc.xml"); // URLConnection urlConnection = url.openConnection(); // urlConnection.connect(); // InputStream input
【javase】this.getClass().getResource()示例详解:获取各种路径
public class ResourceTest extends TimerTask{    @Override    public void run() {        System.out.println(&quot;开始测试ResourceTest------------------&quot;);        String s1 = this.getClass().getResource(&quot;&quot;).get...
说说资源加载的问题(Class的getResource方法)
背景最近的项目中又碰到了这个问题。需要在web应用的指定路径去手工加载一个文件。平时当项目中某些地方需要手工加载文件的时候,要么xxx.class.getResource, 要么xxx.getClass.getClassLoader.getResource,如果两个都不好使,我通常就是会使用一些比较猥琐的办法或是想其他办法规避掉这个加载问题,今天正好有空,是时候来仔细分析下了。熟悉的双亲委派原则先...
项目中不同位置资源文件读取的几种方式
项目工程下读取文件的几种方式:1.图片在src目录下,即资源文件;此时测试类与图片位置无关。InputStream inputStream = getClass().getClassLoader().getResourceAsStream(&amp;amp;amp;quot;getTclazz.jpg&amp;amp;amp;quot;);//相对于src目录,使用相对路径,不加 / -----------------------------------------
java.net.Url类的应用
<br />认识IP、认识URL是进行网络编程的第一步。java.net.URL提供了丰富的URL构建方式,并可以通过java.net.URL来获取资源。 <br />    一、认识URL<br />    类 URL 代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,例如对数据库或搜索引擎的查询。<br />    简单的可以把URL理解为包含:协议、主机名、端口、路径、查询字符串和参数等对象。每一段可以独立设置。<br />    应用程
getResource函数有中文或空格路径的处理方法
使用类似下面的方法:String filePath = Thread.currentThread().getContextClassLoader().getResource(&quot;.xml&quot;).getPath();或 this.getClass().getClassLoader().getResource(&quot;&quot;).getPath();来获取文件路径时,里面的路径空格会被“%20”代替,这时候如果你用这...
【我的Android进阶之旅】Android使用getIdentifier()方法根据资源名来获取资源id
有时候我们想动态的根据一个资源名获得到对应的资源id,就可以使用getResources().getIdentifier()方法来获取该id。然后再使用该id进行相关的操作。 1、Demo示例 下面用一个小Demo来讲解如何使用getResources().getIdentifier()方法来获取该id。 例如,新建一个Android项目,项目结构部分截图如下所示: MainActiv
Android官方文档—APP资源(Resource Types) (String)
字符串资源 字符串资源为应用程序提供可选的文本样式和格式的文本字符串。有三种类型的资源可以为您的应用程序提供字符串: String 提供单个字符串的XML资源。 String Array 提供字符串数组的XML资源。 Quantity Strings (Plurals) XML资源,带有不同的字符串以进行复数化 所有字符串都能够应用一些样式标记和格式化参数。有关样式和格式化字符串的...
SpringFramework核心技术二:Resources(加载资源的几种方式)
Resources的介绍 java.net.URL不幸的是,对于各种URL前缀,Java的标准类和标准处理程序不足以满足所有对低级资源的访问。例如,没有URL可用于访问需要从类路径获取的资源的标准化实现,或者相对于某个资源的获取 ServletContext。尽管可以为专用URL 前缀注册新的处理程序(类似于诸如前缀的现有处理程序http:),但这通常非常复杂,并且URL界面仍然缺少某些期望的功...
getResources()方法读取jar包内部的文件
说明 通过class的getResources()方法,加载文件,四种写法,其中 this.getClass()和 PEData.class是相同的,以下以this来进行调试 1  this.getClass().getResource("/"); 2  this.getClass().getClassLoader().getResource("/"); 3  PEData.class.g
【整】getResource().getPath() 路径带 %20 问题展开
getResource().getPath()返回的路径空格变成了 %20 最近我们有一个 web 程序,为了取到配置文件的路径,采用了this.getClass().getResource(“/”).getPath()的方法来取得存放 class 的物理路径。本来测试的时候没问题,一发布崩溃掉了。究其原因是发布环境的 Tomcat 的安装目录带有空格,而 getPath 的返回值把空格给...
ServletContext中getRealPath()读取文件及其他三种读取文件的方式及其区别
ServletContext中getR
weblogic 11g类加载问题总结
本人在此之前甚少接触weblogic,家里的weblogic也是第一次安装的。如果发现错误,敬请指正。问题描述XX局点升级weblogic为11g,重新发包出错。现在记录一下处理的各种问题总结。错误1: apache commons某些包的方法没有找到这是最早出现的问题,会出现类似下面的错误信息。<2015-10-14 下午05时57分30秒 CST> <Error> <HTTP> <BEA-101
Java面试题
  一、super() 方法的用法及作用?   有如下Java类: public class Bird{ private String name; public Bird() { } public Bird(String name){ this.name = name; } public void walk() { System.out.println(“走路”); } public String getName(){ return name; } public void setName(String name){ this.name = name; } }
怎样用Java.net.URL表示一个本地目录下的文件?
URL source = new URL("file:///D:/Users/workspace");
Tomcat加载顺序
Tomcat加载顺序。加载方法以及加载的顺序。
java项目中的路径控制 getResource()和getResourceAsStream以及路径问题
在Servlet应用中,有一个getRealPath(String str)的方法,这个方法尽管也可以动态地获得文件的路径,不秘直接手写绝对路径,但这也是一个不被建议使用的方法,那么,我们有什么方法可以更好地获得文件呢?         那就是Class.getResource()与Class.getResourceAsStream()方法,但很多人还是不太懂它的用法,因为很多人(比如
动态规划问题(三)-----矩阵最小路径和
 有一个矩阵map,它每个格子有一个权值。从左上角的格子开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,返回所有的路径中最小的路径和。 给定一个矩阵map及它的行数n和列数m,请返回最小路径和。保证行列数均小于等于100. 测试样例: [[1,2,3],[1,1,1]],2,3 返回:4 (方法一)暴力搜索法 class MinimumPat...
JedisPool的getResource()方法配置不当导致服务假死
JedisPool的getResource()方法配置不当导致服务假死 dubbo服务中使用jedis,在从JedisPool获取jedis时超时导致dubbo服务假死 &quot;DubboServerHandler-10.0.101.208:20880-thread-22&quot; daemon prio=10 tid=0x00007f52f00b7800 nid=0x3d85 waiting on cond...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java学习路径和书单 python学习顺序