我正在编写一个将在CentOS 6.5上运行JBoss EAP 6.3.1的应用程序
在此应用程序中,我必须将文件保存到磁盘,当重新启动应用程序时,我必须将其读回应用程序。
这一切都有效。
问题是我想保存到应用程序工作目录中的文件。
现在发生的事情是文件:foo.bar将保存在我运行standalone.sh(或Windows上的.bat)的位置。
public void saveToFile() throws IOException {
String foo = "bar";
Writer out = new OutputStreamWriter(new FileOutputStream("/foo.bar"), "UTF-8");
try {
out.write(foo);
} finally {
out.close();
}
}
答案 0 :(得分:2)
您可以尝试使用绝对路径来保存文件:
String yourSystemPath = System.getProperty("jboss.home.url") /*OPTIONAL*/ + "/want/to/save/here";
File fileToSave = new File(yourSystemPath,"foo.bar");
Writer out = new OutputStreamWriter(new FileOutputStream(fileToSave), "UTF-8");
基本上在这里,我正在使用File
变量创建一个yourSystemPath
对象,我在其中存储了保存文件的路径,然后我使用以前创建new FileOutputStream(fileToSave)
创建了对象File
请确保您的JBoss服务器具有yourSystemPath