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

网站改版301精品成品网站入口

网站改版301,精品成品网站入口,wordpress最多文章数,微网站的好处SpringBoot文件上传 上传文件是互联网中常常应用的场景之一#xff0c;最典型的情况就是上传头像等#xff0c;今天就带着带着大家做一个 Spring Boot 上传文件的小案例。 1、pom依赖 ?xml version1.0 encodingUTF-8? project xml…SpringBoot文件上传 上传文件是互联网中常常应用的场景之一最典型的情况就是上传头像等今天就带着带着大家做一个 Spring Boot 上传文件的小案例。 1、pom依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.1.0.RELEASE/version/parentgroupIdcom.example/groupIdartifactIdspring-boot-file-upload/artifactIdversion0.0.1-SNAPSHOT/versionnamespring-boot-file-upload/namedescriptionspring-boot-file-upload/descriptionpropertiesjava.version1.8/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-thymeleaf/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-devtools/artifactIdoptionaltrue/optional/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project引入了spring-boot-starter-thymeleaf做页面模板引擎写一些简单的上传示例。 2、启动类设置 package com.example;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);} }3、配置文件 #http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#common-application-properties #search multipart spring.servlet.multipart.max-file-size10MB spring.servlet.multipart.max-request-size10MB4、编写前端页面 上传页面upload.html !DOCTYPE html html bodyh1Spring Boot file upload example/h1form methodPOST action/upload enctypemultipart/form-datainput typefile namefile/br/br/input typesubmit valueSubmit/ /form/body /html非常简单的一个 Post 请求一个选择框选择文件一个提交按钮效果如下。 上传结果展示页面uploadStatus.html !DOCTYPE html html langen xmlns:thhttp://www.thymeleaf.org bodyh1Spring Boot - Upload Status/h1div th:if${message}h2 th:text${message}/ /div/body /html效果图如下 5、编写上传控制类 访问 localhost 自动跳转到上传页面 package com.example.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.mvc.support.RedirectAttributes;import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths;Controller public class UploadController {// 上传的文件的保存路径private static String UPLOADED_FOLDER D:\\content\\【完】SpringBoot\\【完】007-SpringBoot文件上传\\;GetMapping(/)public String index() {return upload;}PostMapping(/upload)public String singleFileUpload(RequestParam(file) MultipartFile file,RedirectAttributes redirectAttributes) {if (file.isEmpty()) {redirectAttributes.addFlashAttribute(message, Please select a file to upload);return redirect:uploadStatus;}try {// 获取文件并设置保存路径byte[] bytes file.getBytes();Path dir Paths.get(UPLOADED_FOLDER);Path path Paths.get(UPLOADED_FOLDER file.getOriginalFilename());// 不存在的话则创建if (!Files.exists(dir)) {Files.createDirectories(dir);}Files.write(path, bytes);// 该方法可以直接上传到目标文件// file.transferTo(target);redirectAttributes.addFlashAttribute(message,You successfully uploaded file.getOriginalFilename() );} catch (IOException e) {redirectAttributes.addFlashAttribute(message, Server throw IOException);e.printStackTrace();}return redirect:/uploadStatus;}GetMapping(/uploadStatus)public String uploadStatus() {return uploadStatus;}}上面代码的意思就是通过MultipartFile读取文件信息如果文件为空跳转到结果页并给出提示如果不为空 读取文件流并写入到指定目录最后将结果展示到页面。 MultipartFile是Spring上传文件的封装类包含了文件的二进制流和文件属性等信息在配置文件中也可对相 关属性进行配置基本的配置信息如下 spring.http.multipart.enabledtrue #默认支持文件上传. spring.http.multipart.file-size-threshold0 #支持文件写入磁盘. spring.http.multipart.location # 上传文件的临时目录 spring.http.multipart.max-file-size1Mb # 最大支持文件大小 spring.http.multipart.max-request-size10Mb # 最大支持请求大小 最常用的是最后两个配置内容限制文件上传大小上传时超过大小会抛出异常。 更多配置信息参考这里 https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#common-application-properties 6、异常处理 package com.example.controller;import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.multipart.MultipartException; import org.springframework.web.servlet.mvc.support.RedirectAttributes;/*** 全局异常处理*/ ControllerAdvice public class GlobalExceptionHandler {//https://jira.spring.io/browse/SPR-14651//4.3.5 supports RedirectAttributes redirectAttributesExceptionHandler(MultipartException.class)public String handleError1(MultipartException e, RedirectAttributes redirectAttributes) {redirectAttributes.addFlashAttribute(message, e.getCause().getMessage());return redirect:/uploadStatus;} }设置一个ControllerAdvice用来监控Multipart上传的文件大小是否受限当出现此异常时在前端页面给出提 示。利用ControllerAdvice可以做很多东西比如全局的统一异常处理等。 这样一个使用 Spring Boot 上传文件的简单 Demo 就完成了。
http://www.pierceye.com/news/507962/

相关文章:

  • 如何提高网站的点击率域名空间网站推广
  • 上海松江做网站建设wordpress 拒绝连接
  • 有免费的个人网站吗富德生命人寿保险公司官方网站保单服务
  • 网站备案 子域名网页视频制作软件
  • 空间 网站网站建设哪个好
  • 公司网站域名价格云南免费网站建设
  • 网站跳转域名不变常见网站架构
  • 山东省建设厅电工证查询网站网站标题的选择
  • 网站建设是属于软件吗电话销售哪里找客户电话
  • 用vue做网站的实例网站制作郑州
  • 五个网站想自己在家做外贸网站
  • 收费的电影网站怎么做网页设计图片的应用
  • 班级网站建设步骤橘子皮主题wordpress
  • 网站模板源文件网站制作需求文档
  • 青岛注册公司网站建网站需要那些步骤
  • 深圳做网上商城网站小蘑菇网站建设软件
  • 广州住建网站网站空间购买价格
  • 金华永康网站建设公司做网站的优点
  • 有免费的微网站制作吗瑞安哪里有培训做网站的
  • 苏州住房和城乡建设局网站wordpress中文书
  • 盐城市滨海县建设局网站wordpress 4.8.1 漏洞
  • 荆州市城市建设投资开发有限公司网站百度人工服务24小时
  • 永久域名购买昆明网站建设优化企业
  • 自适应网站模板下载网页设计培训哪好
  • 做门窗网站便宜的vps租用网站
  • 龙岗附近公司做网站建设多少钱公司行业类型有哪些
  • 188旅游网站管理系统源码做外贸有那些网站平台
  • 江苏网站建设要多少钱近三个月以来的国际新闻
  • 旬阳做网站免费漫画软件
  • asp相册网站源码企业网站建设的上市公司