J2EE分布式架构集成阿里云OSS存储

Posted 编程坑太多

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了J2EE分布式架构集成阿里云OSS存储相关的知识,希望对你有一定的参考价值。

摘要: 1. 服务接口定义 / 文件上传 1:头像 2:显示图片 3:个人封面 :4:基础图片 @param request @param response @param uid 用户id @param userType 文件上传 1:头像 2:显示图片 3:个人封面 :4:基础图片 0:视频 @param files 上传的文件对象 * @return

服务接口定义

/**
文件上传 1:头像 2:显示图片 3:个人封面 :4:基础图片
*@paramrequest
*@paramresponse
*@paramuid 用户id
*@paramuserType 文件上传 1:头像 2:显示图片 3:个人封面 :4:基础图片 0:视频
*@paramfiles 上传的文件对象
@return
@throws Exception
*/

@RequestMapping(value = "/upload/base64Code", method = RequestMethod.POST)
public ResponseVO fileuploadBase64(@RequestBody JSONObject json, HttpServletRequest request, HttpServletResponse response) throws Exception {
   String uid = json.optString("uid");
   String userType = json.optString("userType");
   String base64Code = json.optString("base64Code");
   String oldName = json.optString("oldName");
   String suffix = json.optString("suffix");
   //获取当前登陆用户
   if(StringUtils.isEmpty(uid)){
   return CloudResponseCode.buildEnumResponseVO(CloudResponseCode.USER_ID_NOT_NULL, null);
   }
   //上传文件新名字
   String newName = String.valueOf(new Date().getTime());
   String fileKey = CloudConstant.VITAL_USER_INFO_PATH + uid + "/" + newName + "." + suffix;
   AliyunUtils.getInstance().uploadByte(base64Code.getBytes(), fileKey);
   ......
   .......
   return CloudResponseCode.buildEnumResponseVO(CloudResponseCode.FILEUPLOAD_SUCCESS, obj);
}
oss utils封装
/**
上传byte数组
@param fileByte
@param fileKey
*/

public void uploadByte(byte[] fileByte, String fileKey){
   // 创建OSSClient实例
   OSSClient ossClient = new OSSClient(CloudConstant.ENDPOINT, CloudConstant.ACCESSKEYID, CloudConstant.ACCESSKEYSECRET);
   // 上传byte数组
   ossClient.putObject(CloudConstant.BUCKET, fileKey, new ByteArrayInputStream(fileByte));
   // 关闭client
   ossClient.shutdown();
}
/**
上传文件流
@param inputStream
@param fileKey
*/

public void uploadInputStream(InputStream inputStream, String fileKey){
   // 创建OSSClient实例
   OSSClient ossClient = new OSSClient(CloudConstant.ENDPOINT, CloudConstant.ACCESSKEYID, CloudConstant.ACCESSKEYSECRET);
   // 上传文件流
   ossClient.putObject(CloudConstant.BUCKET, fileKey, inputStream);
   // 关闭client
   ossClient.shutdown();
}
/**
删除文件
@param fileKey
*/

public void deleteFile(String fileKey){
   // 创建OSSClient实例
   OSSClient ossClient = new OSSClient(CloudConstant.ENDPOINT, CloudConstant.ACCESSKEYID, CloudConstant.ACCESSKEYSECRET);
   // 删除文件
   ossClient.deleteObject(CloudConstant.BUCKET, fileKey);
   // 关闭client
   ossClient.shutdown();
}

J2EE分布式架构集成阿里云OSS存储


以上是关于J2EE分布式架构集成阿里云OSS存储的主要内容,如果未能解决你的问题,请参考以下文章

J2EE分布式架构集成阿里云OSS存储

JEESZ分布式架构集成阿里云OSS存储

jeesz分布式架构集成阿里云oss存储

JEESZ分布式架构集成阿里云OSS存储

jeesz分布式架构集成阿里云oss存储

JEESZ分布式架构集成阿里云OSS存储