springmvc之上传文件

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

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

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

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

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

springmvc之上传文件_第1张图片

启动并访问图片

springmvc之上传文件_第2张图片

 

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

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

 

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

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

springmvc之上传文件_第3张图片

 

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)结果

springmvc之上传文件_第4张图片

你可能感兴趣的:(springmvc之上传文件)