Java工程路径及相对路径(转载)
3. 新建文件,默认位于工程目录
new File("xxx.txt").getAbsolutePath();
例如输出,D:\workspaces\workspace1\myProject
如果使用ClassName.class.getResource("name.config")的结果作为File对象的参数,则会报错:
java.io.FileNotFoundException: file:\D:\workspaces\workspace1\myProject\bin\com\hutu\log4j\name.config (文件名、目录名或卷标语法不正确。)
at java.io.FileInputStream.open(Native Method)
4. 配置文件路径
ApplicationContext context = new ClassPathXmlApplicationContext("Config.xml");
.xml, .properties等,默认还是从“工程目录”去找的
1). 倒是也可以用绝对路径,真心不推荐啊,太不优雅了;
2). 或者,将log4j文件置于bin/目录下:
a). 代码中,PropertyConfigurator.configure("bin/log4j.properties");
b). 代码中,PropertyConfigurator.configure(ClassLoader.getSystemResource("log4j.properties"));
c). 注意,必须位于bin直接目录下,不可位于bin更深层的目录当中。可是这究竟是为神马捏?
5. 查询某类的.class文件所在目录
Main.class.getResource(“”);
例如输出,file:/D:/workspaces/workspace1/myProject/bin/com/hutu/log4j/
注意,查询包上级路径,只需将参数改作“/”
6. 查询thread上下文所在目录
Thread.currentThread().getContextClassLoader().getResource("");
例如输出,D:\workspaces\workspace1\myProject\bin\
7. 查询某类的classloader所在目录
Main.class.getClassLoader().getResource("");
例如输出,D:\workspaces\workspace1\myProject\bin\
8. 查询classloader所在目录
ClassLoader.getSystemResource("");
例如输出,D:\workspaces\workspace1\myProject\bin\
class.getResourceAsStream("path")、class.getClassLoader().getResourceAsStream("path")区别的分析
class.getResourceAsStream("path"):如果path仅为一个文件名,则只会在包路径下查找,当path以“/”开头时,则会从classpath的根路径开始查找(SRC根目录)
class.getClassLoader().getResourceAsStream("path"):无论要查找的资源前面是否有"/"都是从classpath的根路径下查找。
Java工程路径及相对路径(转载)的更多相关文章
- java工程中的相关路径
一.路径 绝对路径: 指的是文件在系统中的真实路径(物理路径). 相对路径: 指的是文件相对某个目录的相对路径. 对于java application 工程来说,当编写完一个类之后,class文件会编 ...
- Eclipse下的java工程目录问题和路径问题理解
1.Eclipse下的java工程都有哪些文件夹? 答:new java project时,会默认创建SRC源代码目录,并默认创建一个bin目录作为输出目录,输出目录是指生成的class文件和配置文件 ...
- 如何把一个java工程打成一个jar包(转载)
1.jar包有入口(即有main()函数) 选中要打包的工程--->右键选择Export---->java----->Runnable java file----->next- ...
- Java工程读取resources中资源文件路径问题
正常在Java工程中读取某路径下的文件时,可以采用绝对路径和相对路径,绝对路径没什么好说的,相对路径,即相对于当前类的路径.在本地工程和服务器中读取文件的方式有所不同,以下图配置文件为例. 本地读取资 ...
- 解决Java工程URL路径中含有中文的情况
问题: 当Java工程路径中含有中文时,得不到正确的路径 *** 解决: 这其实是编码转换的问题.当我们使用ClassLoader的getResource方法获取路径时,获取到的路径被URLEncod ...
- Java获取路径方法&相对路径读取xml文件方法
(1).request.getRealPath("/");//不推荐使用获取工程的根路径 (2).request.getRealPath(request.getRequestURI ...
- JAVA WEB项目中各种路径的获取
JAVA WEB项目中各种路径的获取 标签: java webpath文件路径 2014-02-14 15:04 1746人阅读 评论(0) 收藏 举报 分类: JAVA开发(41) 1.可以在s ...
- java工程中的.classpathaaaaaaaaaaaaaaaa<转载>
第一部分:classpath是系统的环境变量,就是说JVM加载类的时候要按这个路径下去找,当然这个路径下可以有jar包,那么就是jar包里所有的class. eclipse build path是ec ...
- java工程中的.classpath<转载>
第一部分:classpath是系统的环境变量,就是说JVM加载类的时候要按这个路径下去找,当然这个路径下可以有jar包,那么就是jar包里所有的class. eclipse build path是ec ...
- Java的绝对路径和相对路径
Java的绝对路径和相对路径 参考:http://blog.csdn.net/u011225629/article/details/46872775 1. 绝对路径 以根部件开始的路径是绝对路径,比如 ...
随机推荐
- windows下go调用内存dll
有时候我们希望将dll嵌入到程序内部,以提高程序的安全性,这里我写的一个开源memorydll模块. 首先 go get github.com/nkbai/go-memorydll 然后在需要的时候 ...
- 十五、Node.js-fs模块(中)
有了上一篇JS同步异步知识的铺垫,我们一起学习一下fs模块的同步和异步知识: Node.js内置的fs模块就是文件系统模块,负责读写文件. 和所有其它JavaScript模块不同的是,fs模块同时提供 ...
- NSCache 缓存
前言 NSCache 是苹果提供的一个专门用来做缓存的类,当内存 "不足" 或超过限制的时候,会自动清理缓存,使用时可以指定缓存的数量和成本. 用法与 NSMutableDicti ...
- 使用jmeter做简单的场景设计
使用jmeter做简单的场景设计 Jmeter: Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试.我之所以选择它,最重要的一点就是----开源 个人 ...
- 【bzoj4720】[Noip2016]换教室 期望dp+最短路
Description 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程.在可以选择的课程中,有2n节 课程安排在n个时间段上.在第i(1≤i≤n)个时间段上,两节内容相同的 ...
- 【Linux】DNS服务-BIND基础配置
1.BIND简介 现在使用最为广泛的DNS服务器软件是BIND(Berkeley Internet Name Domain),最早有伯克利大学的一名学生编写,现在最新的版本是9,有ISC(Intern ...
- 【Leedcode】Insertion Sort List
Sort a linked list using insertion sort. /** * Definition for singly-linked list. * struct ListNode ...
- Avito Cool Challenge 2018:D. Maximum Distance (最小生成树)
题目链接 题意 : 给出一个联通图和一些特殊的点,现在定义cost(u,v)为一条从u到v的路径上面边权的最大值 , 定义dis(u,v) 为从u到v 路径上面cost 的最小值 然后求所有特殊点到其 ...
- 03-树2 List Leaves (25 分)
Given a tree, you are supposed to list all the leaves in the order of top down, and left to right. I ...
- [转] JavaScript中的Truthy和Falsy介绍
[From] http://www.jb51.net/article/59285.htm 与大多数编程语言一样,JavaScript中存在boolean类型,以供逻辑判断使用.不过,和很多其它编程语言 ...