文件上传数据
2023-09-11 14:22:43 时间
/**
* 然后可以通过file.getInputStream获取其输入流,然后将其输出成ByteArrayOutputStream 字节输出流,
* @param
* @param request
* @param file
* @return BaseResultDto
* @throws IOException
*/
@RequestMapping(value = "/uploadImage")
@ResponseBody
@CrmEditStepAop(type = "CRM_FOLLOWUP_LOG",no = "10001",event = 1)
public BaseResultDto uploadImage(HttpServletRequest request, @RequestParam(value = "file",required = false)MultipartFile file)throws IOException {
CrmFollowupLog crmFollowupLog = MapUtils.getCrmFollowupLog(Utils.getMyParam(request));
//后台传参验证
BaseResultDto baseResultDto = Utils.baseDefaultResultMessageError();
if(file.isEmpty()){
logger.error("没有找到相对应的文件");
return Utils.renderBaseResultDtoError("没有找到相对应的文件");
}
logger.info("成功获取照片-file.isEmpty():"+file.isEmpty());
String fileName =file.getOriginalFilename();
String path = null;
String type = null;
type = fileName.indexOf(".") != -1 ? fileName.substring(fileName.lastIndexOf(".") + 1, fileName.length()) : null;
logger.info("图片初始名称为:" + fileName + " 类型为:" + type);
if(type==null){
logger.error("文件类型为空");
return Utils.renderBaseResultDtoError("文件类型为空");
}
if ("GIF".equals(type.toUpperCase())||"PNG".equals(type.toUpperCase())||"JPG".equals(type.toUpperCase())) {
String realPath = config.getProperty("file.upload.path");//request.getSession().getServletContext().getRealPath("/");
String trueFileName = String.valueOf(System.currentTimeMillis()) + fileName;
String timeStr = DateUtils.dateToString();
path = realPath + "/upload/crm/"+timeStr+"/" + fileName;
logger.info("存放图片文件的路径:" + path);
String absolutePath = FileUtils.saveFile(file, path);
crmFollowupLog.setRegManNo("19910");
crmFollowupLog.setLastUpdateManNo("19910");
logger.info(crmFollowupLog.toString());
InputStream inputStream=file.getInputStream();
byte by[] = new byte[inputStream.available()];
inputStream.read(by);
inputStream.close();
crmFollowupLog.setImage(by);
logger.info(crmFollowupLog.toString());
String followNo = service.insert(crmFollowupLog);
baseResultDto=Utils.renderBaseResultDtoSuccess("操存成功");
logger.info("文件成功上传到指定目录下");
}else {
logger.error("不是我们想要的文件类型,请按要求重新上传");
return Utils.renderBaseResultDtoError("不是我们想要的文件类型,请按要求重新上传");
}
return baseResultDto;
}
相关文章
- 织梦dedecms后台文件media_add.php任意上传漏洞解决办法
- 负载均衡服务器如何保证上传文件同步
- linux文件组、权限等
- 分享七:文本文件和二进制文件的区别
- vue.js3:pdf文件转图片(pdfjs-dist@2.14.305 / vue@3.2.37)
- spring boot:实现图片文件上传并生成缩略图(spring boot 2.3.1)
- linux shell 脚本攻略学习12--文件权限详解,chmod命令详解,chown命令详解,chattr命令详解
- AndroidManifest.xml文件详解(activity)(二)
- ubuntu 使用sudo vim /etc/apt/sources.list命令修改文件后该如何退出?
- MFC Windows 程序设计[272]之文件日期例程(附源码)
- linux find xargs grep查找给定路径下目标字符串所在文件
- 使用不同版本的UI5库文件本地测试UI5应用
- 如何禁掉SAP Fiori上传文件的病毒扫描设置
- 上传文件(同事写的,个人觉得写的蛮规范,拿来学习学习!)
- CV之FR:基于cv2(加载人脸识别xml文件及detectMultiScale得到人脸特征)、keras的load_model(加载表情hdf5、性别hdf5)实现表情识别和性别识别
- Springboot+WebUploader优雅实现超大文件的上传(二)
- Http服务器实现文件上传与下载(二)
- Http服务器实现文件上传与下载(五)
- rsync 拉取文件
- linux 删除rm 文件 空间没有释放
- 点击图片实现文件上传
- Linux设备文件自动生成