weixin_43926190 2019-05-10 14:19 采纳率: 50%
浏览 876

前台传图片url到数据库,再次读取到前台图片不显示

@RequestMapping(value = "/uploadPic.action")
@ResponseBody
public Response uploadPic(@RequestParam("picture") MultipartFile picture , HttpServletRequest request) {
Response response = new Response();
//获取文件在服务器的储存位置
String path = "D:/img";
File filePath = new File(path);
System.out.println("文件的保存路径:" + path);
if (!filePath.exists() && !filePath.isDirectory()) {
System.out.println("目录不存在,创建目录:" + filePath);
filePath.mkdir();
}
//获取原始文件名称(包含格式)
String originalFileName = picture.getOriginalFilename();
System.out.println("原始文件名称:" + originalFileName);
//获取文件类型,以最后一个.为标识
String type = originalFileName.substring(originalFileName.lastIndexOf(".") + 1);
System.out.println("文件类型:" + type);
//获取文件名称(不包含格式)
String name = originalFileName.substring(0, originalFileName.lastIndexOf("."));
//设置文件新名称: 当前时间+文件名称(不包含格式)
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String date = sdf.format(d);
String fileName = date + name + "." + type;
System.out.println("新文件名称:" + fileName);
//项目url,这里可以使用常量或者去数据字典获取相应的url前缀;
String fileUrl="http://localhost:8080";
//文件获取路径
fileUrl = fileUrl + request.getContextPath() + "/img/" + fileName;
//在指定路径下创建一个文件
File targetFile = new File(path, fileName);
//将文件保存到服务器指定位置
try {
picture.transferTo(targetFile);
System.out.println("上传成功");
//将文件在服务器的存储路径返回
response.setResult(fileUrl);
} catch (IOException e) {
e.printStackTrace();
response.setResult("上传失败");
}
return response;
}

    后台
  • 写回答

1条回答 默认 最新

  • 小达哥的垃圾桶 2019-05-10 14:28
    关注

    你这样把文件存到项目路径下,咋访问啊,只能是重新编译,才能读取吧;
    你看看在浏览器输入文件地址,是不是404

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!