码迷,mamicode.com
首页 > 编程语言 > 详细

springmvc - 文件上传 - 使用阿里oss文件

时间:2015-07-02 17:57:53      阅读:275      评论:0      收藏:0      [点我收藏+]

标签:

公司用到了 阿里的文件服务器 oss ,我们之前用的是springmvc的上传文件。

首先增加阿里的jar到我的maven项目。

复制下面的sample这些java类。、

public class OSSObjectSample {
 private static final String ACCESS_ID = "****";
 private static final String ACCESS_KEY = "****";
 private static final String BUCKET_NAME = "111";
 private static OSSClient client = null;
 private static void initialize() {
  if (client == null) {
   client = new OSSClient(ACCESS_ID, ACCESS_KEY);
  }
 }
 /**
  * 
  * 上传文件 2015年7月2日14:11:27
  * 
  * @param key
  *            服务器的文件名称
  * 
  * @param file
  *            要上传的文件
  * 
  * @param serviceName
  *            那个服务器要访问的路径
  * @return
  * @throws OSSException
  * @throws ClientException
  * @throws FileNotFoundException
  */
 public static String OSSPutObject(String key, File file, String serviceName) {
  initialize();
  ObjectMetadata objectMeta = new ObjectMetadata();
  objectMeta.setContentLength(file.length());
  // 可以在metadata中标记文件类型
//  objectMeta.setContentType("image/jpeg");
  InputStream input;
  try {
   input = new FileInputStream(file);
   client.putObject(BUCKET_NAME, serviceName + "/" + key, input,
     objectMeta);
  } catch (FileNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return "http://" + BUCKET_NAME + ".oss-cn-hangzhou.aliyuncs.com/"
    + serviceName + "/" + key;
 }
 
 public static String OSSPutObject(String key,MultipartFile multipartFile , String serviceName) {
  initialize();
  
  CommonsMultipartFile commonsMultipartFile= (CommonsMultipartFile)multipartFile; 
        DiskFileItem diskFileItem = (DiskFileItem)commonsMultipartFile.getFileItem(); 
        File file = diskFileItem.getStoreLocation();
        return OSSPutObject(key, file, serviceName);
 }
 
}

开始的时候 使用client的单例。

 

然后springmvc使用的是MultipartFile这个文件对象接收的 打开源码看一下 和file是没有关系的 是自己定义的一个接口 然后在继续看 他们直接有没有共同点 没发现什么  然后百度看看  找到了CommonsMultipartFile这个对象 然后慢慢的转了过来  测试成功。

springmvc - 文件上传 - 使用阿里oss文件

标签:

原文地址:http://my.oschina.net/superman158/blog/473575

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!