springmvc之上传图片

在页面form中提交enctype="multipart/from-data"的数据时,需要springmvc对multipart类型的数据进行解析。

在springmvc.xml中配置解析这种类型数据的解析器。

配置解析器需要提前配置依赖

          <dependency>
             <groupId>commons-fileupload</groupId>
             <artifactId>commons-fileupload</artifactId>
             <version>1.2.2</version>
          </dependency>
          <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.5</version>
          </dependency>
</bean>
	<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="defaultEncoding" value="utf-8" />
        <!-- 上传图片最大大小-->
        <property name="maxUploadSize" value="10485760000" />
        <property name="maxInMemorySize" value="40960" />
    </bean>

之后要创建虚拟目录存储图片,这里不再赘述,

第一种图形化界面改

详情见https://blog.csdn.net/hexinghua0126/article/details/79189481

第二种直接修改tomcat的配置:

在conf/server.xml文件,添加虚拟目录

<Context docBase="物理路径(例如F:\develop\upload\temp)" path = "\pic" reloadable="false"

注意:在图片虚拟目录中,一定将图片分级创建,提高i/o性能。

//上传图片
            //controller中传参MultipartFile item_pic

            if(item_pic!=null){
                //存储图片的物理路径
                String pic_path = "F:\\develop\\upload\\temp\\";
                //原始名称
                String originalFilename = item_pic.getOriginalFilename();
                //新图片名称
                String newFileName = UUID.randomUUID()+originalFilename.substring(originalFilename.lastIndexOf("."));
                File newFile = new File(pic_path + newFileName);
                //将内存中的数据写入磁盘
                item_pic.transferTo(newFile);
                //将新图片名称写到itemsCustom
                itemsCustom.setPic(newFileName);
            }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值