这听起来很奇怪,但是过去几个小时我试图在我的java类的Spring应用程序的Web应用程序文件夹中编写一个json文件。我附上了快照,可以清除对它的理解。 click to Refer the file system snap here..."jsonfiles" is the folder i am writing files marked with red circle.请为java类中的json文件建议正确的文件路径。提前致谢。并且还建议这样做是一种好习惯吗?我是这种情况的新手。
写入文件的Java代码:
FileWriter file = new FileWriter("../src/main/webaccess/jsonfiles/jsonfile.json")){
file.write(json.toString());
}
答案 0 :(得分:2)
不,这不是在webapp文件夹中放置输出(在你的情况下是JSON)文件的正确途径。
原因:在部署期间,您将丢失此更改,因为将提取war文件并且您的webapp文件夹将被覆盖。
正确的方法:写入tomcat目录之外的文件系统。一般做法是定义一个环境变量,指向您的应用程序具有写权限的外部目录,并在那里写下您的所有内容。它与写日志文件类似。
答案 1 :(得分:0)
Vinod是正确的。当我尝试使用Spring配置Kafka Producer时,我遇到了类似的问题。将临时文件放在OS / Container实际文件系统中的任何文件夹中,例如/ tmp / myApp。此“ / tmp / myApp”目录必须具有写权限。在目录中读取/写入文件时,必须使用目录的绝对路径。