考虑一下,我有一个将csv文件响应给客户端的休息服务。 csv文件是通过mysql查询生成的:
SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy-HH-mm-ss");
String path = (df.format(new Date()))+"-"+limit+".csv";
String fileQuery = String.format("Select * INTO OUTFILE '%s' FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\\n' from some_table ", path);
/*Executing query*/
Path p = (Path) Paths.get(path);
ResponseBuilder response = Response.ok((Object) p.toFile());
response.header("Content-Disposition",
"attachment; filename="+p.getFileName());
return response.build();
jboss应用程序和mysql都托管在RH Openshift齿轮上。 问题是 - 我在哪里可以找到由mysql生成的outfile?
在我看来,mysql的设备与jboss有不同的环境所以当我创建csv文件test.csv时写的
select into outfile '/tmp/test.csv' ...
我在/ tmp目录中找不到它。
我试图在路径中使用一些openhift环境变量,例如OPENSHIFT_DATA_DIR等具有相同的结果。
提前致谢。