springMVC上传文件

第一步:配置虚拟目录

tomcat上配置图片虚拟目录,在tomcatconf/server.xml中添加:

<Context docBase="D:\develop\upload\temp" path="/pic" reloadable="false"/>

开启Tomcat服务器,

访问http://localhost:8080/pic即可访问D:\develop\upload\temp下的图片。

此时, D:\develop\upload\temp==http://localhost:8080/pic可作为图片服务器

第二部加入jar

实现图片上传需要加入的jar包,如下图:


把两个jar包放到工程的lib文件夹中

第三步

1.1. 配置上传解析器

在springmvc核心配置文件中

springmvc.xml中配置文件上传解析器


<!-- 文件上传,id必须设置为multipartResolver -->

<bean id="multipartResolver"

class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

<!-- 设置文件上传大小 -->

<property name="maxUploadSize" value="5000000" />

</bean>

第四步

修改jsp页面




设置表单可以进行文件上传,如下图:



<tr>
<td>商品图片</td>
<td>
<c:if test="${item.pic !=null}">
<img src="/pic/${item.pic}" width=100 height=100/>
<br/>
</c:if>
<input type="file"  name="pictureFile"/> 
</td>
</tr>

1.1. 图片上传

在更新商品方法中添加图片上传逻辑


**

 * 更新商品

 *

 * @param item

 * @return

 * @throws Exception

 */

@RequestMapping("updateItem")

public String updateItemById(Itemitem, MultipartFile pictureFile) throws Exception {

// 图片上传

// 设置图片名称,不能重复,可以使用uuid

String picName = UUID.randomUUID().toString();

 

// 获取文件名

String oriName = pictureFile.getOriginalFilename();

// 获取图片后缀

String extName = oriName.substring(oriName.lastIndexOf("."));

 

// 开始上传

pictureFile.transferTo(new File("C:/upload/image/" +picName + extName));

 

// 设置图片名到商品中

item.setPic(picName +extName);

// ---------------------------------------------

// 更新商品

this.itemService.updateItemById(item);

 

return "forward:/itemEdit.action";

}





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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值