十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
“对象存储”或“基于对象的存储”一词是由它的名称派生出来的,因为它将数据和元数据封装到对象中。元数据本质上是描述其他数据的数据,或者在基于对象的存储的情况下,是关于通常存储在对象内的文件的信息。
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的文峰网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
对象存储在平面结构或地址空间中。每个对象都分配一个对象ID或唯一标识符,使它们可以从单个存储库或存储池中检索。企业非常重视这种方法,因为它提供了更大的灵活性,可以将数据放置在基于数据块和文件的存储解决方案之外。
杉岩海量对象存储针对海量非结构化数据存储的最优解决方案,采用去中心化、分布式技术架构、支持百亿级文件及EB级容量存储,具备高效的数据检索、智能标签和分析能力,轻松应对大数据和云时代的存储挑战,为企业发展提供智能决策!
前段时间正好做个项目,就是用的oss,普通上传和断点续传,代码贴出来,看是不是你需要的public class OssManage {public static String ACCESS_KEY_ID = null;public static String ACCESS_KEY_SECRET = null;public static String ENDPOINT = null;public static String BUCKETNAME = null;public static String BUCKETNAME_VIDEO = null;public static String OUT_OF_DATE = null;private OSSClient client = null;private ObjectMetadata meta = null;static{try {ACCESS_KEY_ID = SysConst.getProperty("OSS_ACCESS_KEY_ID");ACCESS_KEY_SECRET = SysConst.getProperty("OSS_ACCESS_KEY_SECRET");ENDPOINT = SysConst.getProperty("OSS_ENDPOINT"); BUCKETNAME = SysConst.getProperty("OSS_BUCKETNAME"); BUCKETNAME_VIDEO = SysConst.getProperty("OSS_BUCKETNAME_VIDEO"); OUT_OF_DATE = SysConst.getProperty("OSS_OUT_OF_DATE");} catch (java.lang.Exception e) {e.printStackTrace();}}public void init(){ // 初始化一个OSSClient client = new OSSClient(ENDPOINT,ACCESS_KEY_ID, ACCESS_KEY_SECRET); meta = new ObjectMetadata();}/** * @Description: 上传文件到OSS文件服务器 * @param content 文件流 * @param key 上传为OSS文件服务器的唯一标识 * @param mimeType 文档类型 * @throws Exception * @ReturnType:String OSSObject的ETag值。*/public String uploadFile(InputStream content,String key,String mimeType) throws Exception{//进行初始化init(); // 必须设置ContentLength meta.setContentType(mimeType); // 上传Object. LogUtil.printConsoleLog("*****************上传图片到oss服务器开始*****************" + key); PutObjectResult result = client.putObject(BUCKETNAME, key, content, meta); LogUtil.printConsoleLog("*****************上传图片到oss服务器结束*****************" + key); return result.getETag();}/** * @Description: 根据key获取oss服务器上的图片地址 * @param key * @return * @ReturnType:String*/public String getImgURl(String key){init();Date expires = new Date (new Date().getTime() + Integer.parseInt(OUT_OF_DATE)); // 30 minute to expireGeneratePresignedUrlRequest generatePresignedUrlRequest ;if(key.startsWith("msplatform")){generatePresignedUrlRequest =new GeneratePresignedUrlRequest(BUCKETNAME, key);}else {generatePresignedUrlRequest =new GeneratePresignedUrlRequest(BUCKETNAME_VIDEO, key);}generatePresignedUrlRequest.setExpiration(expires);URL url = client.generatePresignedUrl(generatePresignedUrlRequest);return url.toString();}/** * @Description:根据key获取oss服务器上的ipa文件地址 * @param key * @return * @ReturnType:String */public String getIpaURl(String key){init();Date expires = new Date(new Date().getTime()+ 10*365*24*3600*1000);GeneratePresignedUrlRequest generatePresignedUrlRequest ;if(key.startsWith("msplatform")){generatePresignedUrlRequest =new GeneratePresignedUrlRequest(BUCKETNAME, key);}else {generatePresignedUrlRequest =new GeneratePresignedUrlRequest(BUCKETNAME_VIDEO, key);}generatePresignedUrlRequest.setExpiration(expires);URL url = client.generatePresignedUrl(generatePresignedUrlRequest);return url.toString();}/** * @Description: 根据key获取oss服务器上的图片地址 * @param key * @return * @ReturnType:String*/public InputStream getObject(String key){init();OSSObject object = null;if(key.startsWith("msplatform")){object= client.getObject(BUCKETNAME, key);}else{object= client.getObject(BUCKETNAME_VIDEO, key);}object.getObjectMetadata().getContentType();// 获取Object的输入流InputStream objectContent = object.getObjectContent();return objectContent;}/** * @Description:删除文件 * @param key OSS文件服务器上文件的唯一标识 * @ReturnType:void*/public void deleteFile(String key){init();client.deleteObject(BUCKETNAME, key);}/** * @Description: 断点上传文件到OSS文件服务器 * @param content 文件流 * @param key 上传为OSS文件服务器的唯一标识 * @param position 位置*/public String appendObjectFile(InputStream content,String key,int position,String mimeType) throws Exception{ //进行初始化 init(); // 必须设置ContentLength meta.setContentLength(position); meta.setContentType(mimeType); meta.setCacheControl("no-cache"); meta.setContentEncoding("utf-8"); // 上传 LogUtil.printConsoleLog("*****************断点上传图片到oss服务器开始*****************" + key); AppendObjectRequest appendObjectRequest = new AppendObjectRequest(BUCKETNAME, key, content, meta); appendObjectRequest.setPosition(Long.valueOf(position)); AppendObjectResult appendObjectResult =client.appendObject(appendObjectRequest); LogUtil.printConsoleLog("*****************断点上传图片到oss服务器结束*****************" + key); return appendObjectResult.getNextPosition().toString();}public static void main(String[] args) {OssManage ossManage = new OssManage();}}
oss 也叫对象存储,用来存放图片,css、视频等静态文件。可以作为网站、app等web应用的:附件服务器、头像服务器、图片服务器、下载服务器。
每家叫法不一样,阿里云叫oss,腾讯云叫cos,其实都是一个东西。老魏为此写过云服务器oss建站等多篇教程,看完有疑问可以问,在线了就回答。