• 大小: 65KB
    文件类型: .7z
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: Java
  • 标签: Java  oss  

资源简介

使用的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());
}
}

评论

共有 条评论