1、点(.):代表java命令运行的目录;
2、斜杠(/):表示classpath的根目录;
在java项目下,点(.) java命令的运行目录从项目的根目录开始的; classpath的根目录从bin目录开始的
在web项目下,点(.) java命令的运行目录从tomcat/bin目录下开始的; classpath的根目录从web-INF/classes目录下开始的
解决方案一相关代码
因为是WEB项目所以我将
放到tomcat 的bin目录下方 因为我如果放的是./src/object.properties 在测试类中能够找到文件
但是在运行tomcat的时候创建工厂调用该文件时就找不到了
解决方案二
把上面红色处的代码FileInputStream in = new FileInputStream("./object.properties");改为InputStream in=ObjectDaoFactory.class.getResourceAsStream("/object.properties");即可解决。
但是不知道为什么ObjectDaoFactory.class.getResourceAsStream这种方法编译时不会报错
,我在IDEA运行中就报错了,而这种方法在MyEclipce中可以使用