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

springmvc下完成文件上传,使静态资源生效的三种方法

1.上传文件multipart/form-data才可以通过表单提交上传

如果要完成上传功能,必须要开启springmvc的配置功能

!--上传功能beanid写死id="multipartResolver"

class后面配置就是MultipartResolve手动打开上传适配器

1.文件上传实现步骤

1.配置springmvc文件

<beanid="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!--4.4个常用属性-->
<propertyname="defaultEncoding"value="UTF-8"></property>
<!--上传文件总体大小value后面跟的是字节-->
<propertyname="maxUploadSize"value="520520520"></property>
<!--上传单个文件的大小-->
<propertyname="maxUploadSizePerFile"value="124000000"></property>
<!--上传文件的缓存-->
<propertyname="maxInMemorySize"value="1024"></property>
</bean>

2.//依赖一个jarcommons-fileupload

<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.5</version>
</dependency>

3.运行代码

 @PostMapping("/upload")public  String upload( @RequestBody MultipartFile  myfile,@RequestBody MultipartFile myfile1) throws IOException {//1.以流的方式接受文件 输入流InputStream inputStream = myfile.getInputStream();//2,用流的方式 保存到某一地方 输出流OutputStream outputStream = new FileOutputStream("D:\\"+myfile.getOriginalFilename());IOUtils.copy(inputStream,outputStream);//3.关闭流inputStream.close();outputStream.close();return "/hello.jsp";}

2.让静态资源生效

1.在web.xml

<!--第一种方式让静态资源生效-->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/img/*</url-pattern>
</servlet-mapping>

2,在springmvc文件

<!--第二通过mvc命名空间使静态资源生效-->
<!--mapping映射地址虚拟路径-->
<!--location本地文件夹-->
<mvc:resourcesmapping="/image/*"location="/img/"/>
<mvc:resourcesmapping="/html/*"location="/html/"/>

3.在springmvc文件

<mvc:default-servlet-handler/><mvc:annotation-driven/>

http://www.lryc.cn/news/120000.html

相关文章:

  • 数据归一化:优化数据处理的必备技巧
  • 常量池-JVM(十九)
  • java+springboot+mysql智能社区管理系统
  • pve组网实现公网访问pve,访问电脑,访问pve中的openwrt同时经过openwrt穿透主路由地址nginx全公网访问最佳办法测试研究...
  • 远程运维大批量IT设备?向日葵批量部署、分组授权与安全功能解析
  • Harbor内网离线安装使用HTTPS访问
  • Python“牵手”京东工业商城商品详情数据方法介绍
  • 接口测试意义及工作流程
  • QT-如何使用RS232进行读写通讯
  • 05 神经网络语言模型(独热编码+词向量的起源)
  • PyTorch Lightning教程八:用模型预测,部署
  • 桂林小程序https证书
  • html input 设置不允许修改
  • BI技巧丨利用Index计算半累计
  • 第三章:前端UI框架介绍
  • javaScript:文档流写入和元素写入
  • 【BI系统】选型常见问题解答二
  • docker版jxTMS使用指南:使用jxTMS采集数据之一
  • 【js】日期、时间正则匹配
  • 专利研读-SIMD系列-向量化引擎
  • C#--设计模式之单例模式
  • RWEQ风蚀方程模型与ArcGIS数据处理Python代码库添加结合理论研究和科研实践
  • 基于STM32微控制器的物联网(IoT)节点设计与实现
  • 篇二十一:中介者模式:解耦对象之间的交互
  • tomcat的多实例,动静分离(web服务基础结束)
  • LeetCode150道面试经典题--判断子序列(简单)
  • kubeadml 安装 k8s
  • 考研C语言进阶题库——更新16-20题
  • 【变形金刚01】attention和transformer所有信息
  • 面试热题(路径总和II)