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

个人网站 建设关键词排名点击软件推荐

个人网站 建设,关键词排名点击软件推荐,万网速成网站,windows做的ppt下载网站笔记 文件上传 文件上传是指将本地图片,视频,音频等文件上传到服务器,供其它用户浏览或下载的过程 文件上传前端三要素 : file表单项 post方式 multipart/from-data 服务端接收文件 : 用spring中的API : MultipartFile 要想文件名唯一 …

笔记

文件上传

  • 文件上传是指将本地图片,视频,音频等文件上传到服务器,供其它用户浏览或下载的过程

  • 文件上传前端三要素 :

    • file表单项

    • post方式

    • multipart/from-data

  • 服务端接收文件 : 用spring中的API : MultipartFile

  • 要想文件名唯一 : 可以使用uuid技术

  • 在SpringBoot中,文件上传,默认的单个文件最大允许最大大小为1M,如果需要上传大文件,可以在application.properties中进行如下配置:

    #配置单个文件最大上传大小
    spring.servlet.multipart.max-file-size=10MB
    ​
    #配置单个请求最大上传大小(一次请求可以上传多个文件)
    spring.servlet.multipart.max-request-size=100MB

  • 文件的本地存储 :

    image.transferTo(new File("pathname"));

  • 本地存储 : 无法直接访问 , 磁盘空间限制 , 磁盘损坏

  • OSS :

    • 为每一个文件都提供了一个访问路径,可以直接访问到该文件

    • 在aliyun中存储文件;

第三方服务的通用思路:

  1. 准备工作

  2. 参照官方SDk编写入门程序

  3. 集成使用

注意 :

  • SDk :Software Development Kit的缩写,软件开发工具包,包括辅助软件开发工具包(jar包),代码示例等,都可以叫做SDk;

阿里云OSS - 使用步骤

  1. 注册阿里云(实名认证)

  2. 充值

  3. 开通对象存储服务(OSS):

    • 点击右上角的控制台。

    • 将鼠标移至左上角三条横线处,在显示界面中单击对象存储OSS。

    • 然后点击开通

  4. 创建bucket : 直接点击左上角的新建Bucket,然后其它不用改,取一个唯一的name,然后将读写权限改为公共读。

  5. 获取AccessKey : 注意保存AccessKey和Secret

  6. 参照官方SDk编写入门程序 : 点击右下角的SDk下载,然后在新出现的页面中点击SDk示例,参考官方文档照做即可,如java : copy相关语言文件上传的代码即可,如下 :

    import org.junit.jupiter.api.Test;
    import com.aliyun.oss.ClientException;
    import com.aliyun.oss.OSS;
    import com.aliyun.oss.OSSClientBuilder;
    import com.aliyun.oss.OSSException;
    import java.io.FileInputStream;
    import java.io.InputStream;
    ​
    public class AliOssTest {
    ​@Testpublic void testOss(){// Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";// 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。String accessKeyId = "---------------------";String accessKeySecret = "-----------------------";// 填写Bucket名称,例如examplebucket。String bucketName = "-----------";// 填写Object完整路径,完整路径中不能包含Bucket名称,例如exampledir/exampleobject.txt。String objectName = "0001.jpg";// 填写本地文件的完整路径,例如D:\\localpath\\examplefile.txt。// 如果未指定本地路径,则默认从示例程序所属项目对应本地路径中上传文件流。String filePath= "C:\\Users\\Administrator\\Pictures\\Saved Pictures\\10.jpg";
    ​// 创建OSSClient实例。OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
    ​try {InputStream inputStream = new FileInputStream(filePath);// 创建PutObject请求。ossClient.putObject(bucketName, objectName, inputStream);} catch (OSSException oe) {System.out.println("Caught an OSSException, which means your request made it to OSS, "+ "but was rejected with an error response for some reason.");System.out.println("Error Message:" + oe.getErrorMessage());System.out.println("Error Code:" + oe.getErrorCode());System.out.println("Request ID:" + oe.getRequestId());System.out.println("Host ID:" + oe.getHostId());} catch (Exception ce) {System.out.println("Caught an ClientException, which means the client encountered "+ "a serious internal problem while trying to communicate with OSS, "+ "such as not being able to access the network.");System.out.println("Error Message:" + ce.getMessage());} finally {if (ossClient != null) {ossClient.shutdown();}}}
    }

    如果jdk在9以上,除了添加

     <groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.15.1</version></dependency>

    还要添加 :

    <dependency><groupId>javax.xml.bind</groupId><artifactId>jaxb-api</artifactId><version>2.3.1</version></dependency><dependency><groupId>javax.activation</groupId><artifactId>activation</artifactId><version>1.1.1</version></dependency><!-- no more than 2.3.3--><dependency><groupId>org.glassfish.jaxb</groupId><artifactId>jaxb-runtime</artifactId><version>2.3.3</version></dependency>

  7. 然后在相关代码中更改自己的相关信息(如 : endpoint , accessKeyId,accessKeySecret等);

    最后运行程序,就可以在自己的Bucket中查看到上传的文件了;

  8. 案例集成OSS :

    如在新增员工的过程中,要上传图片,那么服务器端先接收上传的图片,然后通过程序将图片用OSS来存储,然后获取OSS中存储好的文件的URl,最后返回URl给前端,然后前端自动将图片展示出来。

注意 :

  • Bucket : 存储空间是用户用于存储对象(Object,就是文件)的容器,所有对象都必须隶属于某个存储空间。

具体 :

创建一个工具类 AliOSSUtils(将相关信息更改为自己的):

package com.it.utils;
​
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import java.io.*;
import java.util.UUID;
​
​
@Component
public class AliOSSUtils{
​private String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";private String accessKeyId = "xxxxxxx";private String accessKeySecret = "xxxxxx";private String bucketName = "xxxxxxxxxx";
​/*** 实现上传图片到OSS*/public String upload(MultipartFile file) throws IOException {// 获取上传的文件的输入流InputStream inputStream = file.getInputStream();
​// 避免文件覆盖String originalFilename = file.getOriginalFilename();String fileName = UUID.randomUUID().toString() + originalFilename.substring(originalFilename.lastIndexOf("."));
​//上传文件到 OSSOSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);ossClient.putObject(bucketName, fileName, inputStream);
​//文件访问路径String url = endpoint.split("//")[0] + "//" + bucketName + "." + endpoint.split("//")[1] + "/" + fileName;
​// 关闭ossClientossClient.shutdown();return url;// 把上传到oss的路径返回}
​
}

然后在该接口中直接调用工具类中的方法即可 :

        @PostMapping("/upload")public Result upload(MultipartFile image) throws IOException {log.info("文件上传,文件名 : {}",image.getOriginalFilename());
​// 调用阿里云OSS工具类进行文件上传String url = aliOSSUtils.upload(image);log.info("文件上传完成,文件访问的url为 : {}",url);
​return Result.success(url);}

http://www.dinnco.com/news/64144.html

相关文章:

  • docker wordpress 修改端口官网seo怎么做
  • 电子商务网站建设实训步骤网络推广站
  • 网站开发业务ppt亚马逊关键词排名提升
  • 做网站怎样申请域名长沙seo网站管理
  • 企业263邮箱登录入口南昌seo排名优化
  • 商城网站如何建设成都百度搜索排名优化
  • 上海专业做网站建设如何做2022国内外重大新闻事件10条
  • 常州做网站公司哪家好营销方法有哪几种
  • 做白酒网站sem是什么职业岗位
  • 道滘网站建设百度入口
  • 北京想象力网站建设论坛优化seo
  • 天津网站建设诺亚云和数据培训机构怎么样
  • 黄石网站建设价格上海十大营销策划公司排名
  • 南宁定制网站建设抖音seo排名优化
  • 免费网站建设哪家好免费网站制作平台
  • 山西省这房和城乡建设厅网站韩国热搜榜
  • 深圳做微商网站公司百度推广官网首页
  • 建网站用什么服务器网络营销做得好的品牌
  • 百度糯米做网站多少钱定西seo排名
  • 创建网站英语网络培训班
  • app 网站开发公司制作链接的app的软件
  • 网站有冒号怎么打开aso优化运营
  • 自己网站做优化的有权利卖么推广下载app拿佣金
  • 做移动互联网站点百度seo优化规则
  • 网站建设查询怎么优化网站排名才能起来
  • 搜索引擎优化到底是优化什么广安seo外包
  • wordpress 文件性能优化工具
  • 网站开发用到哪些技术sem搜索
  • 景区网站建设原则最近的热点新闻
  • 培训网站平台怎样做移动网站推广如何优化