java 相对路径 绝对路径 classes bin 根目录
尝试用DOM4j解析spring配置文件时,第一步读取文件时,获取路径就遇到了问题,。。。经过google了n+log n 次个页面,才算有了个粗浅的认识,下面就让我用简短的话语来总结一下(好像这段就全是废话。。。)。。。
1、spring的配置文件存放位置由web.xml里的contextConfigLocation来确定,一般是放在web-inf或者是src根目录下
2、关于src文件夹里的文件的发布:source folder下的.java文件,生成的.class文件放在output folder中。而将source folder中的非.java文件直接拷贝到output folder(eclipse会直接拷贝全部的非.java文件,intellij IDEA可以配置拷贝哪些扩展名的文件)。 output文件夹一般指的是c/s的bin和b/s的classes。
3、用SAXReader.reader读取时需要知道文件的路径 。
我列出一段代码,大家感受一下吧
System.out.println(this.getClass().getClassLoader().getResource("com/lavasoft/res/a.txt"));
System.out.println(this.getClass().getResource("/com/lavasoft/res/a.txt"));
System.out.println(this.getClass().getResource("").getPath());
System.out.println(this.getClass().getResource("/").getPath());
System.out.println(this.getClass().getClassLoader().getResource("").getPath());
System.out.println(Thread.currentThread().getContextClassLoader().getResource("").getPath());
System.out.println(System.getProperty("user.dir"));
getclass()是当前的类实例,得到的是src下当前类的目录;getclassloader()是类的装载器,得到的是src根目录。"/"表示的是根目录。
web-inf目录如何取得还在摸索中,各位有知道的,请不吝赐教。
最后贴一篇我感觉总结得很好的文章:
http://imyself.javaeye.com/blog/460706
再来一篇 类加载路径 原理的文章 jwitch:
http://www.blogjava.net/Unmi/archive/2007/09/10/144101.html
还有这篇也需要研究一下:
http://www.javaeye.com/topic/7871
相关文档:
在9.10中可以在终端中使用apt-get命令进行安装。这种方法比较简单。不过个人认为 对于初学者,还是手动安装比较好,可以熟悉很多东西。
1.下载jdk和jre
登录sun网站http://java.sun.com/javase/downloads/index.jsp,下载jdk-6u18-linux-i586.bin和jre-6u18-linux-i586.bin。注意在官网中
有两个下载地址,一个是jdk-6u1 ......
闲来无事将早些时候已实现的QQ登录界面再实现了一遍,纯手工打造(意思是没有用NetBeans、MyEclipse的拖动功能)。
源代码如下:
package ibees.qq;
import java.awt.BorderLayout;
import java.net.URL;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import j ......
我有一万元钱,是借的!我借了这一万块钱准备去北京继续学习。
我是一个大专生,不入流我学校!虽然我相信一个人的努力能改变命运!所以我一直都在努力的学习JAVA技术,希望能在这条路上走的更远!我有女朋友,对我很好,也很支持我!但我从格力空调辞职,我就选择了JA ......
多继承:
C++中的类可以直接实现多继承 如:class D:public A,public B,public C{……};
Java中不能直接实现这样的多继承,但是可以用接口(interface)来间接实现 如:
public class A{ ……}
public interface C{
public void c1();
public void c2();
}
public class C exten ......