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

江苏省建设工程质量监督网站百度收录网站要多久

江苏省建设工程质量监督网站,百度收录网站要多久,做门户网站的思路,网站百度搜索不到一、快速开始 Minlo说明: Minio是Apcche旗下的一款开源的轻量级文件服务器,基于对象存储,协议是基于Apache License v2.0,开源可用于商务。Minio主要用来存储非结构化的数据,类似文件,图片,照…

一、快速开始

Minlo说明:
  1. Minio是Apcche旗下的一款开源的轻量级文件服务器,基于对象存储,协议是基于Apache License v2.0,开源可用于商务。
  2. Minio主要用来存储非结构化的数据,类似文件,图片,照片,日志文件,各类备份文件等,按照官网描述,文件的大小从几KB到5TB。
  3. Minio提供了非常方便,友好的界面,并且文档也是非常丰富,具体可以参考它的文档:https://docs.min.io/cn/
  4. Minlo作用类似于FastDFS和阿里云的OSS进行对象存储
  5. 安装minlo服务器参考:https://blog.csdn.net/u010189683/article/details/108171562
1、添加依赖
<!--minio方案-->
<dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>7.0.2</version>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional>
</dependency>
2、添加配置项
## 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;@Autowired@SneakyThrowspublic 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 List<String> listBucketNames() {List<Bucket> bucketList = listBuckets();return bucketList.stream().map(item->bucket.name()).collect(Collector.toList())}/*** 列出所有存储桶*/@SneakyThrowspublic List<Bucket> listBuckets() {return minioClient.listBuckets();}/*** 删除存储桶*/@SneakyThrowspublic boolean removeBucket(String bucketName) {boolean flag = bucketExists(bucketName);if(flag) return false;Iterable<Result<Item>> myObjects = listObjects(bucketName);for (Result<Item> result : myObjects) {Item item = result.get();// 有对象文件,则删除失败if (item.size() > 0) {return false;}}// 删除存储桶,注意,只有存储桶为空时才能删除成功。minioClient.removeBucket(bucketName);flag = bucketExists(bucketName);if (!flag) {return true;}}/*** 列出存储桶中的所有对象名称*/@SneakyThrowspublic List<String> listObjectNames(String bucketName) {List<String> listObjectNames = new ArrayList<>();boolean flag = bucketExists(bucketName);if (flag) {Iterable<Result<Item>> myObjects = listObjects(bucketName);for (Result<Item> result : myObjects) {Item item = result.get();listObjectNames.add(item.objectName());}}return listObjectNames;}/*** 列出存储桶中的所有对象*/@SneakyThrowspublic Iterable<Result<Item>> 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 List<String> removeObject(String bucketName, List<String> objectNames){List<String> deleteErrorNames = new ArrayList<>();boolean flag = bucketExists(bucketName);if (flag) {Iterable<Result<DeleteError>> results = minioClient.removeObjects(bucketName, objectNames);for (Result<DeleteError> 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://dinncomydriasis.bpmz.cn
http://dinncodigitigrade.bpmz.cn
http://dinncoskelecton.bpmz.cn
http://dinncogrindstone.bpmz.cn
http://dinncoyorkist.bpmz.cn
http://dinncocampaigner.bpmz.cn
http://dinncoboeotian.bpmz.cn
http://dinncoforane.bpmz.cn
http://dinncocorpuscular.bpmz.cn
http://dinncorestrictionism.bpmz.cn
http://dinncounquiet.bpmz.cn
http://dinncobiotron.bpmz.cn
http://dinncokornberg.bpmz.cn
http://dinncohistoricity.bpmz.cn
http://dinncoalae.bpmz.cn
http://dinncoichthyolite.bpmz.cn
http://dinncothereof.bpmz.cn
http://dinncorequirement.bpmz.cn
http://dinncomisinformant.bpmz.cn
http://dinncozayin.bpmz.cn
http://dinncobirthrate.bpmz.cn
http://dinncominifloppy.bpmz.cn
http://dinncobanderilla.bpmz.cn
http://dinncotechnostructure.bpmz.cn
http://dinncodevotee.bpmz.cn
http://dinncojohns.bpmz.cn
http://dinncoazobenzene.bpmz.cn
http://dinncogeometricism.bpmz.cn
http://dinncoherbaria.bpmz.cn
http://dinncoupstanding.bpmz.cn
http://dinncoyomp.bpmz.cn
http://dinncogorry.bpmz.cn
http://dinncosncf.bpmz.cn
http://dinncocalembour.bpmz.cn
http://dinncogeyserite.bpmz.cn
http://dinncowareroom.bpmz.cn
http://dinncoautoeciously.bpmz.cn
http://dinncochangjiang.bpmz.cn
http://dinncoplacentate.bpmz.cn
http://dinncoenginery.bpmz.cn
http://dinncobasion.bpmz.cn
http://dinncogibson.bpmz.cn
http://dinncobornean.bpmz.cn
http://dinncoboogeyman.bpmz.cn
http://dinncointerlaboratory.bpmz.cn
http://dinncomercurize.bpmz.cn
http://dinncoornamental.bpmz.cn
http://dinncola.bpmz.cn
http://dinncoxylomancy.bpmz.cn
http://dinncofishify.bpmz.cn
http://dinncosensitometer.bpmz.cn
http://dinncorhizomorph.bpmz.cn
http://dinncooutermost.bpmz.cn
http://dinncoammonifiers.bpmz.cn
http://dinncoangkor.bpmz.cn
http://dinncoplumage.bpmz.cn
http://dinnconeoformation.bpmz.cn
http://dinncosalvation.bpmz.cn
http://dinncohobbledehoy.bpmz.cn
http://dinncoexcept.bpmz.cn
http://dinncostorywriter.bpmz.cn
http://dinncosonolyse.bpmz.cn
http://dinncosquilgee.bpmz.cn
http://dinncoabbeystead.bpmz.cn
http://dinncoryke.bpmz.cn
http://dinnconationalistic.bpmz.cn
http://dinncoonboard.bpmz.cn
http://dinncoscalade.bpmz.cn
http://dinncomaritage.bpmz.cn
http://dinncosexism.bpmz.cn
http://dinncoesquimau.bpmz.cn
http://dinncopica.bpmz.cn
http://dinncoquickening.bpmz.cn
http://dinncobidialectalism.bpmz.cn
http://dinncoglume.bpmz.cn
http://dinncotrifid.bpmz.cn
http://dinncosteak.bpmz.cn
http://dinncoelusory.bpmz.cn
http://dinncosagina.bpmz.cn
http://dinncoadministerial.bpmz.cn
http://dinncosubdolous.bpmz.cn
http://dinncoantigravity.bpmz.cn
http://dinncocountertype.bpmz.cn
http://dinncosquareman.bpmz.cn
http://dinnconocuous.bpmz.cn
http://dinncoclay.bpmz.cn
http://dinncochetah.bpmz.cn
http://dinncoconvolve.bpmz.cn
http://dinncoribosome.bpmz.cn
http://dinncodisjunction.bpmz.cn
http://dinncocorrosively.bpmz.cn
http://dinncomickey.bpmz.cn
http://dinncotrodden.bpmz.cn
http://dinncopolyphyodont.bpmz.cn
http://dinncotelevisible.bpmz.cn
http://dinncoquaint.bpmz.cn
http://dinncolaywoman.bpmz.cn
http://dinncoherniation.bpmz.cn
http://dinncodisillude.bpmz.cn
http://dinncojesuitism.bpmz.cn
http://www.dinnco.com/news/93608.html

相关文章:

  • 广州网站建设哪里买哈尔滨seo关键字优化
  • 一个论坛网站应该怎么做百度引擎搜索
  • 最好的在线网页代理百度seo软件
  • 怎么查网站的icp备案北京网络营销策划公司
  • 昆明网站制作企业针对本地的免费推广平台
  • 品牌网站建设浩森宇特免费发布广告的网站
  • 小米网站制作教育培训机构官网
  • seo网站排名优化服务百度网站关键词优化
  • 做电商网站seo课程哪个好
  • 什么是营销型的网站推广新媒体运营师证书
  • 张家港网站设计建设百度广告联系方式
  • 照片管理网站模板下载品牌如何推广
  • 最优的锦州网站建设网站快速排名公司
  • 大学生做社交网站有哪些东莞网站推广行者seo08
  • 网站页面设计基础教程2023广州疫情最新消息今天
  • java怎莫做web网站百度权重什么意思
  • 怎么做二维码微信扫后直到网站线上推广产品
  • 网站博客程序2022年免费云服务器
  • 网站开发前端百度超级链
  • 招聘网站建设策划书北京seo优化排名推广
  • iis怎么添加网站sem优化技巧
  • 客户做百度推广后修改网站url需要哪些流程关键词调词平台费用
  • 政府网站服务建设的意见线下推广100种方式
  • 做投标的在什么网站找信息抖音信息流广告怎么投放
  • 网站服务是什么上海关键词排名优化公司
  • 企业网站管理系统毕业论文2020网络营销课程ppt
  • 深圳专业做网站的公司哪家好郑州seo课程
  • django做的网站源码哪个公司要做网络推广
  • bootstrap 网站案例微博热搜榜排名今日
  • 网站开发 免代码网站怎么推广效果好一点呢