一般情况下,这些配置文件都放在应用的src/ 目录下, 这是系统文件的跟目录, 在编译以后,把里边的所有配置文件都拷贝到了classes/ 目录下, 这个是系统 class 文件的跟目录,之所以把配置文件放在这里,是应为习惯上都把配置文件放在系统跟目录下,方便查找, 如果你想放在别的地方,也可以,只要指名相对路径就可以了!以你上边的为例,比如配置文件和class文件都放在同一个地方, 在:/WEB-INF/classes/net/acai/database 则: InputStream is = getClass.getResourceAsStream("/net/acai/database/db.properties");还有一种办法是直接写绝对路径,这样绝对不会出错! 比如你的db.properties在d盘跟目录下。则:InputStream is = getClass.getResourceAsStream("D:/db.properties");
按“zeq258(近朱者赤) ”的说法,默认的,InputStream is = getClass.getResourceAsStream("/db.properties");读取配置文件db.properties的目录就是以/WEB-INF/classes为根目录,在该目录下查找了?也就是说在tomcat的webapps下默认一定要以这种形式建目录?
这是系统文件的跟目录,
在编译以后,把里边的所有配置文件都拷贝到了classes/ 目录下,
这个是系统 class 文件的跟目录,之所以把配置文件放在这里,是应为习惯上都把配置文件放在系统跟目录下,方便查找,
如果你想放在别的地方,也可以,只要指名相对路径就可以了!以你上边的为例,比如配置文件和class文件都放在同一个地方,
在:/WEB-INF/classes/net/acai/database
则:
InputStream is = getClass.getResourceAsStream("/net/acai/database/db.properties");还有一种办法是直接写绝对路径,这样绝对不会出错!
比如你的db.properties在d盘跟目录下。则:InputStream is = getClass.getResourceAsStream("D:/db.properties");