springmvc之上传文件

springmvc提供了一个接口来来接收上传的文件: MultipartFile

下面是一个文件上传的演示:

注意i本次我们将上传的图片保存到本地,如果服务部署在服务器上,则保存在服务器

的响应的磁盘上。当然可以将文件也保存在fastDfs文件服务器上,看个人喜好

1)给服务器配置 路径和本地磁盘路径的映射

1593730779(1)

启动并访问图片

1593730827(1)

 

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

<bean id="multipartResolver"
    class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <!-- 设置文件上传大小 -->
    <property name="maxUploadSize" value="5000000" />
</bean>

 

3)修改jsp页面,使其能够提交 file

设置表单可以进行文件上传

1593731064(1)

 

4) 编写controller处理上传的文件

复制代码
@RequestMapping(value = "/updateitem.action")
    public String updateitem(QueryVo vo,MultipartFile pictureFile) throws Exception, IOException{

        //保存图片到D: upload
        //设置图片名称,不能重复,使用uuid
        String fileName = UUID.randomUUID().toString();
        //获取文件的扩展名
        String extension= FilenameUtils.getExtension(pictureFile.getOriginalFilename());
        //保存文件到本地
        pictureFile.transferTo(new File("D:\\upload\\"+fileName+"."+extension));
        
        vo.getItems().setPic(fileName+"."+extension);
        
        itemService.updateItemsById(vo.getItems());
        
        return "redirect:/itemEdit.action?id="+vo.getItems().getId();
        
    }
    
复制代码

 

5)结果

1593731201(1)

posted @   青岑  阅读(191)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示
主题色彩