File 使用Netbeans时,在Java web应用程序中的何处添加txt文件作为资源?

File 使用Netbeans时,在Java web应用程序中的何处添加txt文件作为资源?,file,jakarta-ee,resources,netbeans6.7,File,Jakarta Ee,Resources,Netbeans6.7,我想在JavaWeb应用程序中添加一个文本文件作为资源。我使用Netbeans作为IDE。 我想在文件夹中保存一个文件,这样我就可以直接引用该文件,而不是绝对路径 FileInputStream fstream = new FileInputStream("resource.txt"); 将该文件保存在文件夹中的何处?依赖相对文件路径是个坏主意,因为它们依赖于当前工作目录(Java应用程序启动时当前打开的目录),并且您可以从Java应用程序内部控制当前工作目录 您应该将其放在类路径中,然后从类

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

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

将该文件保存在文件夹中的何处?

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

您应该将其放在类路径中,然后从类路径获取:

InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream("resource.txt");
// ...
上面的示例假设该文件位于类路径根目录中。例如,如果它在包
com.example.resources
中,那么您应该按如下方式获得它:

InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream("com/example/resources/resource.txt");
// ...
如果文件应该是可编辑的,那么您应该真正使用绝对磁盘文件系统路径,并在web应用程序的安装指南中正确记录它。另一种方法是使用数据库

另见:

你能帮我理解这个问题吗?按照您的方法,我如何才能实现我的目标?只需确保文件在运行时类路径中结束。在Netbeans中,除其他外,还有Java源文件夹。