Java 获取配置文件路径

Java 获取配置文件路径,第1张

读取配置文件 , xxxproperties放在webroot/WEB-INF/classes/目录下

首先将配置文件转换成InputStream,有两种方式,原理一样,都是通过类加载器得到资源:

(1)InputStream inputStream = ThreadcurrentThread()getContextClassLoader()getResourceAsStream("xxproperties");

(2) InputStream inputStream =

thisgetClass() getClassLoader()getResourceAsStream( "xxproperties" );

调用对象的getClass()方法是获得对象当前的类类型,这部分数据存在方法区中,

而后在类类型上调用 getClassLoader()方法是得到当前类型的类加载器,我们知道在Java中所有的类都是通过加载器加载到虚拟机中的,而且类加载器之间存在父 子关系,就是子知道父,父不知道子,这样不同的子加载的类型之间是无法访问的(虽然它们都被放在方法区中),所以在这里通过当前类的加载器来加载资源也就 是保证是和类类型同一个加载器加载的。

最后调用了类加载器的getResourceAsStream()方法来加载资源。

(3) 然后加载配置文件,读取属性值

Properties prop = new Properties();

propload(input);

String value = propgetProperty("PropertyName");

inputclose();

java文件中获得路径 ThreadcurrentThread()getContextClassLoader()getResource("") //获得资源文件(class文件)所在路径 ClassLoadergetSystemResource("") Class_NameclassgetClassLoader()getResource("") Class_Nameclass getResoujava如何获取jsp页面上传的文件路径

这个要看你是怎么实现的TreeModel,无非三种方式:

1 自己实现TreeModel,这样的话,节点对象就可以直接使用File对象。获取路径也就不成问题了。

2 自己实现treeNode接口,这样的话,可以在treeNode接口中增加File对象的引用。

3 用defaultMutableTreeNode来实现的,那么,可以使用setUserObject的方法,将File对象设置在TreeNode中,然后就可以在得到节点后,使用getUserObject来获取了。

大致如此吧,估计你用的是第3种,因为很少有人愿意重写TreeCellRenderer的,呵呵。但最佳的办法其实就是第一种。

classgetResource("/")getPath()这个方法是获取的当前类所在的根目录,这个根目录在项目中就是src下面,你eclipse中,有的项目运行编译后,会把生成的class文件放到bin文件夹中,我是会maven管理的项目,输出就是:/C:/Workspace/JavaTest/target/classes/。你的视频中,可能它运行java文件不是在eclipse或IDE中运行的,而是在命令窗口中运行的,所以会和你输出的不一样。

1、资源文件放在服务器下是完全没问题的,一个网站发布后也不会随便更新的。

2、如果资源文件过多、或都过大,是建议放到服务器下的,会占用服务器过大的空间,你可以在tomcat中再配置一个虚拟路径,指向一个盘符下一个文件夹(如:d:/images),在

tomcat

serverxml

中设置,然后你就可以用你的服务器地址+/img/+资源路径(注意:这个资源路径是相对d:/images的相对路径)去访问资源了

具体设置方法:

在conf目录下的serverxml文件里的里面加入

例如:

<

context

path=”test”

docbase=”f:\webroot\”/>

以上就是关于Java 获取配置文件路径全部的内容,包括:Java 获取配置文件路径、java如何获取jsp页面上传的文件路径、Java资源管理器中树形文件目录的路径取得问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9764321.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存