为了在JSP中写入文本文件 应该在NETBEANS Web应用程序项目中创建文件的位置。
答案 0 :(得分:1)
将其存储在IDE / server / webapp外部的固定路径中。例如。 C:\var\webapp\data
。您可以使用FileOutputStream
这样写入
File file = new File("C:/var/webapp/data", "filename.txt");
OutputStream output = new FileOutputStream(file);
固定路径又可以通过配置/ properties文件进行配置,而配置/ Where to place and how to read configuration resource files in servlet based application?文件又放在类路径中。另请参阅ServletContext#getRealPath()
String dataPath = properties.getProperty("data.path");
File file = new File(dataPath, "filename.txt");
OutputStream output = new FileOutputStream(file);
不要将其存储在Netbeans的文件夹结构中,只是因为在生产环境中部署和运行时甚至在移动到其他IDE时根本不存在。它使您的webapp完全不可移植。不要将它存储在扩展的webapp的文件夹结构中(使用WEB-INF和所有on em,其中一个人会使用{{3}}将其转换为磁盘文件系统路径),只是因为该文件夹中的每个更改一旦重新部署WAR,或者在某些配置中,即使服务器重新启动,结构也会完全消失,因为创建/编辑的文本文件不是原始WAR的一部分。
完全不同的替代方法是使用(嵌入式)SQL数据库。当您经常需要操作数据或需要搜索数据时,这可能是一个更好的选择。 SQL数据库绝对是针对这项工作高度优化的。