springMVC实现异步上传图片,并保存到Oracle数据库blob类型的字段中

如下:
将图片保存到oracle数据库中 只返回给前端一个图片ID

		//图片上传保存到oracle blob类型字段中
 		 @Override
      	@RequestMapping(value = "/saveTrafficJeevesImgs", method = RequestMethod.POST)
      	public Object saveTrafficJeevesImgs(@RequestParam("file") MultipartFile file,
      		 	HttpServletRequest request) {
      		 MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
      	     // 获得文件
      	     MultipartFile multipartFile = multipartRequest.getFile("file");// 与前端设置的属性值一致
      	     String filename = UUID.randomUUID().toString();// 文件名称
      	     InputStream is = null;
      	     try {
      	       is = multipartFile.getInputStream();
      	       byte[] bytes = FileCopyUtils.copyToByteArray(is);
      	       TrafficJeevesImgsDto trafficJeevesImgsDto = new TrafficJeevesImgsDto();
      	       String imgsId = cy.its.trafficMonitor.rest.util.StringUtil.generateUUID();
      	       trafficJeevesImgsDto.setJeevesImgId(imgsId);
      	       trafficJeevesImgsDto.setContent(bytes);
      	       SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      	       String fmt = sdf.format(new Date());
      	       trafficJeevesImgsDto.setCreateTime(fmt);
      	       trafficJeevesImgsDto.setCreator("jt");
  
			    TrafficJeevesImgsModel trafficJeevesImgsModel = new TrafficJeevesImgsModel();
			     ObjectMapUtils.parseObject(trafficJeevesImgsModel, trafficJeevesImgsDto);
			     
			     Integer a = trafficeJeevesImgsServer.saveTrafficJeevesImgs(trafficJeevesImgsModel);
			     
			     Map map = new HashMap<>();
			     if(a > 0) {
			  	   map.put("imgsId", imgsId);
			  	   return map;
			     }
			     return null;
			   } catch (Exception e) {
			     e.printStackTrace();
			     return null;
			   } finally {
			     IOUtils.closeQuietly(is);
			   }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值