当使用Netbeans时,在Java web应用程序中添加txt文件作为资源



我想在Java web应用程序中添加一个文本文件作为资源。我使用Netbeans作为IDE。
我想在文件夹中保存一个文件,这样我就可以直接引用该文件,而不是一个绝对路径。

FileInputStream fstream = new FileInputStream("resource.txt");

把那个文件放在文件夹的哪里?

依赖于相对文件路径是一个坏主意,因为它们依赖于当前工作目录(Java应用程序启动时当前打开的目录),并且您在Java应用程序内部没有控制当前工作目录。

你应该把它放在类路径中,然后从类路径中获取它:

InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream("resource.txt");
// ...

上面的例子假设文件放在类路径root中。例如,如果它在包com.example.resources中,那么您应该按照以下方式获得它:

InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream("com/example/resources/resource.txt");
// ...

如果文件应该是可编辑的,那么你应该使用一个绝对的磁盘文件系统路径,并在你的web应用程序的安装指南中正确地记录它。另一种方法是使用数据库。

参见:

  • getresourcestream () vs FileInputStream

相关内容

  • 没有找到相关文章