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

构建大型网站cpa游戏推广联盟

构建大型网站,cpa游戏推广联盟,电商网站开发设计方案有哪些,wordpress jd哪个好目录 1. 新建一个springboot项目2. 配置文件application.propertiesapplication.yml 3. 控制类实现文件上传和下载4. 测试 1. 新建一个springboot项目 新建一个springboot项目&#xff0c;选择web&#xff0c;默认即可. 主要pom配置文件如下&#xff1a; <parent><gr…

目录

  • 1. 新建一个springboot项目
  • 2. 配置文件
    • application.properties
    • application.yml
  • 3. 控制类实现文件上传和下载
  • 4. 测试

1. 新建一个springboot项目

      新建一个springboot项目,选择web,默认即可.

      主要pom配置文件如下:

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.10.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><maven.compiler.source>11</maven.compiler.source><maven.compiler.target>11</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><!--web包--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies>
<!--    maven打包设置--><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><includeSystemScope>true</includeSystemScope></configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build>

2. 配置文件

      在配置文件中配置文件上传和下载的根目录,文件大小限制等。

application.properties

file.upload.url=path/to/upload
# 文件大小限制
spring.servlet.multipart.max-file-size=10MB 
# 请求大小限制
spring.servlet.multipart.max-request-size=20MB

application.yml

file.upload.url: path/to/upload
spring:servlet:multipart:# 文件大小限制max-file-size: 10MBmax-request-size: 20MB

3. 控制类实现文件上传和下载

      在控制类中实现文件上传和下载。其中,文件上传通过MultipartFile实现文件类型限制、文件大小限制、多文件上传等,下载通过文件流实现。

@RestController
@RequestMapping(value = "/file")
@CrossOrigin // 允许跨域
@ControllerAdvice // 全局异常处理
public class FileController {//上传的根目录@Value("${file.upload.url}")private String uploadFilePath;@Value("${file.upload.url}")private String downloadFilePath;//捕获上传文件过大的异常//@ExceptionHandler标识方法将处理指定类型的异常@ExceptionHandler(MaxUploadSizeExceededException.class)public ResponseEntity<String> handleMaxSizeException(MaxUploadSizeExceededException exc) {return ResponseEntity.status(HttpStatus.PAYLOAD_TOO_LARGE).body("文件过大,请重新选择上传图片!");}@RequestMapping("/upload")public String httpUpload(@RequestParam("files")//MultipartFile 是 Spring 框架中用于处理文件上传的接口MultipartFile files[]) {StringBuffer urls = new StringBuffer();//遍历多个文件for (int i = 0; i < files.length; i++) {//获取文件类型String contentType = files[i].getContentType();System.out.println(contentType);if (!contentType.contains("image")) {return "文件格式不正确,请重新选择图片!";}//获取上传文件的后缀名String postfix = files[i].getOriginalFilename().substring(files[i].getOriginalFilename().lastIndexOf("."));//生成文件名 使用时间戳,避免重名String fileName = System.currentTimeMillis()+postfix;System.out.println(fileName);
//            File dest = new File(uploadFilePath + '/' + fileName);File dest = new File(uploadFilePath + '/' + fileName);//目录不存在则创建目录if (!dest.getParentFile().exists()) {dest.getParentFile().mkdirs();}try {//将上传的文件保存到指定的目标位置files[i].transferTo(dest);} catch (Exception e) {return "程序错误,请重新上传\n" + e.toString();}urls.append("\n"+uploadFilePath + '\\' + fileName);}return "文件上传成功" + urls.toString();}@RequestMapping("/download")public String fileDownLoad(HttpServletResponse response, @RequestParam("fileName") String fileName) {
//        File file = new File(downloadFilePath + '/' + fileName);File file = new File(downloadFilePath + '\\' + fileName);if (!file.exists()) {return "下载文件不存在";}//清除之前设置的内容response.reset();//设置响应内容类型为二进制流response.setContentType("application/octet-stream");//设置响应字符编码为UTF-8response.setCharacterEncoding("utf-8");//设置响应文件大小response.setContentLength((int) file.length());//设置浏览器以附件的形式下载,并设置文件名response.setHeader("Content-Disposition", "attachment;filename=" + fileName);try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));) {byte[] buff = new byte[1024];OutputStream os = response.getOutputStream();int i = 0;while ((i = bis.read(buff)) != -1) {os.write(buff, 0, i);os.flush();}} catch (IOException e) {return "下载失败";}return "下载成功";}
}

4. 测试

      以下测试使用工具postman实现。测试文件大小的图片可以使用代码生成,可参考文章。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述


参考链接:

https://cloud.tencent.com/developer/article/1594124

https://cloud.baidu.com/article/2773207

https://blog.csdn.net/m0_63297090?type=blog

http://www.tj-hxxt.cn/news/62508.html

相关文章:

  • 重庆专业微信网站制作海外网络推广平台
  • pc网站怎么做适配营销型网站制作企业
  • 空气炸锅做糕点的网站如何自己创造一个网站平台
  • 网站开发一个多少钱啊网络营销策略方案
  • 湖南网站设计公司网络营销整合推广
  • 自媒体人专用网站google推广工具
  • 企业做自己的网站要注意什么全球搜钻是什么公司
  • 网站建设价格标准关键词优化搜索引擎
  • 苏州关键词网站排名电商运营工作内容
  • 做网站记者好吗建站abc网站
  • 太原做微网站的公司百度收录域名
  • 深圳网站专业制作株洲seo优化报价
  • 做淘宝客没网站怎么做关键词歌曲歌词
  • 古色古香的网站模板平台接广告在哪里接的
  • 网站测试设计重庆网站快速排名提升
  • 七宝做网站百度怎么发帖做推广
  • 建设企业网站方法怎么做一个自己的网站
  • 辽河油田建设有限公司网站百度seo刷排名网址
  • 政府网站模板济南优化网络营销
  • 淄博网站设计公司二维码引流推广的平台
  • 商城网站制作百度关键字
  • 出格做网站怎么样买链接网站
  • 建设一个聊天类的网站百度竞价产品
  • 购物平台如何推广如何优化seo
  • 成都网络公司优惠政策优化人员是什么意思
  • 怎么在社保网站上做员工减少东莞seo优化
  • 绵阳个人网站建设如何快速推广自己的产品
  • 电商数据平台网站搜索引擎优化方案
  • 长沙建站费用最新seo网站优化教程
  • 非法期货做网站搜索引擎优化的内容包括