資源簡介
使用的ssm框架 通過阿里云官網提供的Java sdk 做上傳圖片到專有云OSS?實現項目。
代碼片段和文件信息
package?com.byd.oss.controller;
import?java.io.IOException;
import?java.io.InputStream;
import?java.net.URL;
import?java.net.URLConnection;
import?javax.servlet.http.HttpServletRequest;
import?javax.servlet.http.HttpServletResponse;
import?org.apache.commons.io.IOUtils;
import?org.springframework.beans.factory.annotation.Autowired;
import?org.springframework.stereotype.Controller;
import?org.springframework.web.bind.annotation.RequestMapping;
import?org.springframework.web.bind.annotation.RequestMethod;
import?org.springframework.web.bind.annotation.RequestParam;
import?org.springframework.web.bind.annotation.ResponseBody;
import?org.springframework.web.multipart.MultipartFile;
import?com.byd.oss.pojo.Userimage;
import?com.byd.oss.service.OSSImageService;
import?com.byd.oss.util.OSSClientUtil;
/**
?*?上傳或者獲取圖片方法
?*?@author?zhan.zhu
?*
?*/
@Controller
public?class?OSSImageController?{
@Autowired
private?OSSImageService?oSSImageService;
/**
?*?前端上傳圖片
?*?@param?file
?*?@return
?*?@throws?Exception
?*/
@RequestMapping(“/upload“)
@ResponseBody
public?object?upload(@RequestParam(“file“)?MultipartFile?file)throws?Exception{
OSSClientUtil?ossClient?=?new?OSSClientUtil();
String?name?=?ossClient.uploadImg2Oss(file);
String?imgUrl?=?ossClient.getImgUrl(name);
String[]?split?=?imgUrl.split(“\\?“);
//上傳圖片返回url保存到數據庫
Userimage?userimage?=?new?Userimage();
userimage.setUsername(“test“);
userimage.setImageurl(split[0]);
oSSImageService.addUserimage(userimage);
return?split[0];
}
/**
?*?IO流讀取圖片?by:long
?*?@return
?*/
@RequestMapping(value?=?“/IoReadImage“?method?=?RequestMethod.GET)
public?void?IoReadImage(HttpServletRequest?requestHttpServletResponse?response)?throws?IOException?{
//從數據庫查詢查詢圖片的url通過流的方式傳到前臺
Userimage?userimage?=?oSSImageService.getUserimagebyId(1);
String?imgUrl?=?userimage.getImageurl();
URL?url?=?new?URL(imgUrl);
URLConnection?conn?=?url.openConnection();
InputStream?inStream?=?conn.getInputStream();
response.setContentType(“image/jpg“);?//?設置返回的文件類型
response.setHeader(“Access-Control-Allow-Origin“?“*“);//?設置該圖片允許跨域訪問
IOUtils.copy(inStream?response.getOutputStream());
}
}
- 上一篇:微信退款demo java版
- 下一篇:JavaMagic_v0.60b
評論
共有 條評論