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

崇左市网站建设_网站建设公司_Oracle_seo优化

论坛类型的网站怎么做,网站的衡量标准,深圳网站建设定制,南京做网站具体需要多少钱一、快速开始 Minlo说明#xff1a; Minio是Apcche旗下的一款开源的轻量级文件服务器#xff0c;基于对象存储#xff0c;协议是基于Apache License v2.0#xff0c;开源可用于商务。Minio主要用来存储非结构化的数据#xff0c;类似文件#xff0c;图片#xff0c;照…一、快速开始 Minlo说明 Minio是Apcche旗下的一款开源的轻量级文件服务器基于对象存储协议是基于Apache License v2.0开源可用于商务。Minio主要用来存储非结构化的数据类似文件图片照片日志文件各类备份文件等按照官网描述文件的大小从几KB到5TB。Minio提供了非常方便友好的界面并且文档也是非常丰富具体可以参考它的文档https://docs.min.io/cn/Minlo作用类似于FastDFS和阿里云的OSS进行对象存储安装minlo服务器参考https://blog.csdn.net/u010189683/article/details/108171562 1、添加依赖 !--minio方案-- dependencygroupIdio.minio/groupIdartifactIdminio/artifactIdversion7.0.2/version /dependency dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-configuration-processor/artifactIdoptionaltrue/optional /dependency2、添加配置项 ## minio配置 minio:endpoint: http://192.168.179.131:9000/accessKey: adminsecretKey: admin123456 3、配置项和工具类 Data Configuration ConfigurationProperties(prefix minio) public class MinioConfig {private String endpoint;private String accessKey;private String secretKey;Beanpublic MinioClient getMinioClient() throws InvalidEndpointException, InvalidPortException {MinioClient minioClient new MinioClient(endpoint, accessKey, secretKey);return minioClient;}} Component public class MinioUtil {Value(${minio.endpoint})private String endpoint;Value(${minio.accessKey})private String accessKey;Value(${minio.secretKey})private String secretKey;private static final int DEFAULT_EXPIRY_TIME 7 * 24 * 3600;private static MinioClient minioClient;AutowiredSneakyThrowspublic MinioClient setMinioClient(){MinioClient minioClient new MinioClient(endpoint, accessKey, secretKey);return minioClient;}/*** 检查存储桶是否存在*/SneakyThrowspublic boolean bucketExists(String bucketName){boolean flag minioClient.bucketExists(bucketName);return flag ? true : false;}/*** 创建存储桶*/SneakyThrowspublic boolean makeBucket(String bucketName) {boolean flag bucketExists(bucketName);if(flag) return false;minioClient.makeBucket(bucketName);return true;}/*** 列出所有存储桶名称*/SneakyThrowspublic ListString listBucketNames() {ListBucket bucketList listBuckets();return bucketList.stream().map(item-bucket.name()).collect(Collector.toList())}/*** 列出所有存储桶*/SneakyThrowspublic ListBucket listBuckets() {return minioClient.listBuckets();}/*** 删除存储桶*/SneakyThrowspublic boolean removeBucket(String bucketName) {boolean flag bucketExists(bucketName);if(flag) return false;IterableResultItem myObjects listObjects(bucketName);for (ResultItem result : myObjects) {Item item result.get();// 有对象文件则删除失败if (item.size() 0) {return false;}}// 删除存储桶注意只有存储桶为空时才能删除成功。minioClient.removeBucket(bucketName);flag bucketExists(bucketName);if (!flag) {return true;}}/*** 列出存储桶中的所有对象名称*/SneakyThrowspublic ListString listObjectNames(String bucketName) {ListString listObjectNames new ArrayList();boolean flag bucketExists(bucketName);if (flag) {IterableResultItem myObjects listObjects(bucketName);for (ResultItem result : myObjects) {Item item result.get();listObjectNames.add(item.objectName());}}return listObjectNames;}/*** 列出存储桶中的所有对象*/SneakyThrowspublic IterableResultItem listObjects(String bucketName) {boolean flag bucketExists(bucketName);return flag?minioClient.listObjects(bucketName):null;}/*** 通过文件上传到对象*/SneakyThrowspublic boolean putObject(String bucketName, String objectName, String fileName){boolean flag bucketExists(bucketName);if (flag) {minioClient.putObject(bucketName, objectName, fileName, null);ObjectStat statObject statObject(bucketName, objectName);if (statObject ! null statObject.length() 0) {return true;}}return false;}/*** 通过InputStream上传对象*/SneakyThrowspublic boolean putObject(String bucketName, String objectName, InputStream stream) {boolean flag bucketExists(bucketName);if (flag) {minioClient.putObject(bucketName, objectName, stream, new PutObjectOptions(stream.available(), -1));ObjectStat statObject statObject(bucketName, objectName);if (statObject ! null statObject.length() 0) {return true;}}return false;}/*** 以流的形式获取一个文件对象*/SneakyThrowspublic InputStream getObject(String bucketName, String objectName){boolean flag bucketExists(bucketName);if (flag) {ObjectStat statObject statObject(bucketName, objectName);if (statObject ! null statObject.length() 0) {InputStream stream minioClient.getObject(bucketName, objectName);return stream;}}return null;}/*** 以流的形式获取一个文件对象断点下载*/SneakyThrowspublic InputStream getObject(String bucketName, String objectName, long offset, Long length){boolean flag bucketExists(bucketName);if (flag) {ObjectStat statObject statObject(bucketName, objectName);if (statObject ! null statObject.length() 0) {InputStream stream minioClient.getObject(bucketName, objectName, offset, length);return stream;}}return null;}/*** 下载并将文件保存到本地*/SneakyThrowspublic boolean getObject(String bucketName, String objectName, String fileName) {boolean flag bucketExists(bucketName);if (flag) {ObjectStat statObject statObject(bucketName, objectName);if (statObject ! null statObject.length() 0) {minioClient.getObject(bucketName, objectName, fileName);return true;}}return false;}/*** 删除一个对象*/SneakyThrowspublic boolean removeObject(String bucketName, String objectName) {boolean flag bucketExists(bucketName);if (flag) {minioClient.removeObject(bucketName, objectName);return true;}return false;}/*** 删除指定桶的多个文件对象,返回删除错误的对象列表全部删除成功返回空列表*/SneakyThrowspublic ListString removeObject(String bucketName, ListString objectNames){ListString deleteErrorNames new ArrayList();boolean flag bucketExists(bucketName);if (flag) {IterableResultDeleteError results minioClient.removeObjects(bucketName, objectNames);for (ResultDeleteError result : results) {DeleteError error result.get();deleteErrorNames.add(error.objectName());}}return deleteErrorNames;}/*** 生成一个给HTTP GET请求用的presigned URL。* 浏览器/移动端的客户端可以用这个URL进行下载即使其所在的存储桶是私有的。这个presigned URL可以设置一个失效时间默认值是7天。*/SneakyThrowspublic String presignedGetObject(String bucketName, String objectName, Integer expires) {boolean flag bucketExists(bucketName);return bucketExists(bucketName) ? minioClient.presignedGetObject(bucketName, objectName, expires):null;}/*** 生成一个给HTTP PUT请求用的presigned URL。* 浏览器/移动端的客户端可以用这个URL进行上传即使其所在的存储桶是私有的。这个presigned URL可以设置一个失效时间默认值是7天。*/SneakyThrowspublic String presignedPutObject(String bucketName, String objectName, Integer expires) {return bucketExists(bucketName) ? minioClient.presignedPutObject(bucketName, objectName, expires):null;}/*** 获取对象的元数据*/SneakyThrowspublic ObjectStat statObject(String bucketName, String objectName){return bucketExists(bucketName) ? minioClient.statObject(bucketName, objectName) : null;}/*** 文件访问路径*/SneakyThrowspublic String getObjectUrl(String bucketName, String objectName) {return bucketExists(bucketName) ? minioClient.getObjectUrl(bucketName, objectName) : ;} }
http://www.ihoyoo.com/news/73112.html

相关文章:

  • 备用网站怎么做WordPress浏览量免插件
  • 云服务器可以做网站淘宝客做网站备注怎么写的
  • 网站标题的写法销售怎么找客户源
  • 综合网站建设课程设计怎么0成本做网站
  • 茶叶网站策划书深圳买门的网站建设
  • 长沙市建设网站民非企业网站建设费怎么记账
  • 企业网站cms辽宁建设厅官方网站
  • 上海网站的优化公司自己做的网站怎么赚钱
  • 怎么查网站外链松原企业网站建设
  • 暴雪时分电视剧免费观看seo文章推广
  • 深圳市建设局网站重庆建设网站公司简介
  • 重庆天气专业网站建设网站域名过期未续费怎么办
  • 推荐 官网 潍坊网站建设查企业电话软件哪个好
  • 做网站 以图搜货重庆招考网
  • 如何撰写一个网站规划建设方案wordpress 批量分类
  • 什么是网站什么是网址做界面网站用什么语言
  • 做网站行业统称叫什么行业龙岩新罗区建设局网站
  • 麻涌网站仿做网络公司经营范围可以加技
  • 驾校网站源码下载建筑工程招工信息平台
  • 网站交互怎么做的素材最多的网站
  • 网站开发设计运维网站设计的目的和任务
  • 门网站建设色蜂视频
  • 做竞价的网站可以做优化吗建设网站的公司济南兴田德润o评价
  • 友情链接对网站的影响哈尔滨松北区建设局网站
  • 适合新手做的网站项目wordpress生成纯html
  • 美点网络公司网站电商个人营业执照注册
  • 网站制作培训费用家庭装潢设计
  • 阿里云企业网站建设教程京东页面网页设计与制作实训报告
  • html网页设计环保网站中山大兴网站建设
  • 交互式网站模板做网站和网页的目的和作用