关于java读取配置文件的一个问题
关于java读取配置文件的一个问题 
 我的web应用程序需要读取一个配置文件,有很多行初始化的数据.   
 InputStream   is   =Thread.currentThread().getContextClassLoader().getResourceAsStream( "book.csv "); 
 List		ls=getData(is);   
 但是当我每次修改book.csv里面的属性时,需要重启才能读到修改后的值, 
 这个getContextClassLoader().getResourceAsStream是放在内存的嘛? 
 如何能够修改book.csv不重启就能读到, 
 如何清除这些放内存的东西, 
 谢谢.... 
------解决方案--------------------如果这个文件与当前类的文件放在同一个包下的话,我原来是这样做的:   
  <这个类的类名> .class.getResourceAsStream( "book.cvs ");
------解决方案--------------------去配置文件有的时候是一个很棘手的问题,特别是上面几位兄台提到的web开发中。 
 用classloader()就可以免去好多的找不到文件的麻烦。 
 因为类加载器会在同一个加载点上开始查找配置文件。 
 如果你的配置文件在包 
 demo.config下面,文件是config.properties的话 
 那么你的流就可以直接使用getResourceAsStream( "//demo//config//config.properties "),就可以了。 
 如果你直接使用FileInputStream的话,你的文件路径就不好定义。当然,不是不能实现,是会很麻烦。
------解决方案--------------------在web应用中的当前路径好像是web server启动的目录,我不知道是不是都这样,我试过在web程序中输出一个文件,在Tomcat中,结果那个文件被写到%TOMCAT_HOME%\bin\下面了   
 最好还是不要在web应用中写本地路径