当前位置: 首页 > news >正文

网站怎么盈利的seo诊断专家

网站怎么盈利的,seo诊断专家,wordpress 手机端分开,visual studio怎么新建网站一、前言 有时在项目中需要使用一些存储系统来存储文件#xff0c;那么当项目要接入obs作为存储系统时#xff0c;就会利用obs来进行文件的上传下载#xff0c;具体实现如下。 二、如何通过obs实现文件的上传下载#xff1f; 1.添加相关的obs的maven依赖。 dependency…一、前言 有时在项目中需要使用一些存储系统来存储文件那么当项目要接入obs作为存储系统时就会利用obs来进行文件的上传下载具体实现如下。 二、如何通过obs实现文件的上传下载 1.添加相关的obs的maven依赖。 dependencygroupIdcom.huaweicloud/groupIdartifactIdesdk-obs-java-bundle/artifactIdversion3.23.9/version/dependency2.配置obs客户端连接。 Configuration Data public class OBSConfig { Value(${obs.accessKey}) private String accessKey; Value(${obs.secretKey}) private String secretKey; Value(${obs.endpoint}) private String endpoint; Value(${obs.bucket})private String bucketName;} 3.在YAML添加obs配置。 obs:endpoint: http://xxxxxx:xxxxaccessKey: xxxxxxxxsecretKey: xxxxxxxxxxxbucket: my-bucket 4.定义obs工具类代码如下 import com.obs.services.ObsClient; import com.obs.services.exception.ObsException; import com.obs.services.model.CompleteMultipartUploadRequest; import com.obs.services.model.CompleteMultipartUploadResult; import com.obs.services.model.ObjectMetadata; import com.obs.services.model.PutObjectRequest; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component;import java.io.File; import java.io.InputStream; import java.util.UUID;Component public class ObsUtil {Resourceprivate OBSConfig oBSConfigprivate ObsClient obsClient;public ObsClient getClient() {if (obsClient null) {obsClient new ObsClient(oBSConfig.getAccessKey, oBSConfig.getSecretKey, oBSConfig.getEndPoint);}return obsClient;}/*** 上传文件到OBS** param file 待上传的文件* return 返回文件的访问路径*/public String uploadFile(File file) {try (ObsClient obsClient getObsClient()) {// 生成唯一的文件名String fileName UUID.randomUUID().toString() - file.getName();PutObjectRequest putObjectRequest new PutObjectRequest(bucketName, fileName, file);// 设置元数据可选ObjectMetadata metadata new ObjectMetadata();metadata.setContentType(application/octet-stream);putObjectRequest.setMetadata(metadata);obsClient.putObject(putObjectRequest);return endpoint / bucketName / fileName;} catch (ObsException e) {throw new RuntimeException(上传文件失败 e.getMessage(), e);}}/*** 上传文件流到OBS** param inputStream 文件输入流* param fileName 文件名* return 返回文件的访问路径*/public String uploadInputStream(InputStream inputStream, String fileName) {try (ObsClient obsClient getObsClient()) {// 生成唯一的文件名String objectKey UUID.randomUUID().toString() - fileName;PutObjectRequest putObjectRequest new PutObjectRequest(bucketName, objectKey, inputStream);// 设置元数据可选ObjectMetadata metadata new ObjectMetadata();metadata.setContentType(application/octet-stream);putObjectRequest.setMetadata(metadata);obsClient.putObject(putObjectRequest);return endpoint / bucketName / objectKey;} catch (ObsException e) {throw new RuntimeException(上传文件流失败 e.getMessage(), e);}}/*** 下载文件** param objectKey 对象键文件名* param savePath 保存路径*/public Inputstream downloadFile(String objectKey, String savePath) {try (ObsClient obsClient getObsClient()) {GetObjectRequest request new GetObjectRequest();request.setBucketName(StringUtils.isEmpty(bucket) ? oBSConfig.getBucket : bucket);String objectName (originFilePath null ? : originFilePath) fileName;objectName objectName.charAt(0) / ? objectName.substring(1) : objectName;request.setObjectKey(objectName);if (offset ! null) {request.setRangeStart(offset);if (length ! null) {request.setRangeEnd(offset length);}}ObsObject object client.getObject(request);return object.getObjectContent();} catch (ObsException e) {throw new RuntimeException(下载文件失败 e.getMessage(), e);}}/*** 删除文件** param objectKey 对象键文件名*/public void deleteFile(String objectKey) {try (ObsClient obsClient getObsClient()) {obsClient.deleteObject(bucketName, objectKey);} catch (ObsException e) {throw new RuntimeException(删除文件失败 e.getMessage(), e);}} }5.文件上传接口实现示例: RestController RequestMapping(/obs) public class OBSUploadController { Autowired private ObsUtil obsUtil ; PostMapping(/upload) public ResponseEntityString uploadFile( RequestParam(file) MultipartFile file) { try { obsUtil.uploadFile(file.getInputStream(),xxxx); return ResponseEntity.ok(OBS路径: objectKey); } catch (ObsException e) { return ResponseEntity.status(e.getResponseCode()) .body(OBS服务异常: e.getErrorMessage()); } catch (Exception e) { return ResponseEntity.internalServerError() .body(上传失败: e.getMessage()); } } } 有兴趣的可以试一试。
http://www.hkea.cn/news/14401653/

相关文章:

  • 广州穗科建设管理有限公司网站科技 网站建设
  • 绥化市建设局官方网站网页设计与制作课程设计报告书
  • 宁波住房和城乡建设局网站首页杭州建站价格
  • 谷歌云做网站做网站的合作案例
  • 网站开发三大元素91游戏中心
  • 网站开发学那种语言网站侧栏软件排行榜怎么做的
  • 做网站一次付费做门的网站建设
  • 济南源码网站建设上优化
  • 为什么要先创建站点后建立文件?能否改变两者的顺序?电商手机网站开发
  • 新余网站开发proxy网页在线代理
  • 电子商务网站模板石家庄网站建设案例
  • 安徽建站优化哪里有抖音代运营公司布马网络
  • 网站服务器备案查询网站备案企业网站建公司
  • 找人做微信网站做网站需要做手机版吗
  • 东莞免费公司网站建设帮助中心网站模板
  • 建网站要钱吗 优帮云wordpress.org账号
  • 设计师合作网站合肥小吃培训网页设计
  • 做网站的销售好做吗微信seo
  • 90设计网站会员全站通与电商模板的区别wordpress幻灯片太卡
  • 做网站首页文字排版技巧装修网站设计平台
  • 西安网站建设APP开发蓬莱做网站哪家好
  • o2o型网站茶山网站仿做
  • j2ee网站开发开题报告网址大全浏览器主页
  • ui界面濮阳网站怎么做seo
  • 淘客cms网站建设建站系统运营
  • 做外贸球衣用什么网站北京活动策划网站
  • 珲春市建设局网站千岛湖网站建设
  • 网站推广文章怎么写龙岩好工作人才网最新招聘信息
  • discuz门户网站模板手机上海建设安全生产协会网站
  • 宿迁558网络专业做网站asp.net小型网站开发