我想将上传的文件保存在 tomcat 目录中,之后我想让一些用户访问下载该文件。 现在文件保存在 eclipse 目录中,或者保存在保存 eclipse 的光盘上,但从来没有保存在 tomcat 目录中。我不知道如何访问 tomcat 的路径,我不想给出: C:\tomcat7\webapps\blabla\,我想获取 tomcat 所在的路径。
上传 Controller :
@Controller
@RequestMapping(value = "/upload")
public class UploadController
{
@RequestMapping(method = RequestMethod.GET)
public String getUploadForm(Model model)
{
model.addAttribute(new UploadItem());
return "upload/uploadForm";
}
@RequestMapping(method = RequestMethod.POST)
public String create(UploadItem uploadItem, BindingResult result)
{
if (result.hasErrors())
{
for(ObjectError error : result.getAllErrors())
{
System.err.println("Error: " + error.getCode() + " - " + error.getDefaultMessage());
}
return "upload/uploadForm";
}
// Some type of file processing...
String fileNameToCreate = "/"+uploadItem.getFileData().getOriginalFilename();
File file;
try {
file = new File(fileNameToCreate);
FileUtils.writeByteArrayToFile(file, uploadItem.getFileData().getBytes());
} catch (Throwable e) {
e.printStackTrace();
}
System.err.println("-------------------------------------------");
System.err.println("Test upload: " + uploadItem.getName());
System.err.println("Test upload: " + uploadItem.getFileData().getOriginalFilename());
System.err.println("-------------------------------------------");
return "redirect:/app/";
}
}
我希望有人有一些想法来获得从这个 Controller 到 tomcat 的路径,或者我该如何修复它
最佳答案
您可以使用以下方法获取您的 tomcat 文件夹:
System.getProperty("catalina.base");
关于java - 在spring mvc中保存文件时的tomcat路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19909219/