图片上传之Spring MVC 后台实现

文件上传maven依赖


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

    <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.5</version>
    </dependency>
    

Spring MVC bean配置

  <!-- 文件上传 -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="defaultEncoding" value="utf-8"></property>
        <property name="maxUploadSize" value="5120000"></property>
        <property name="uploadTempDir" value="/upload"></property>
    </bean>
    
    /**
     * Created by cody on 2016/12/26.
     *
     * 文件上传Controller
     *
     *
     */
    @Controller
    @RequestMapping("upload")
    public class UploadController {
        private static final Logger logger = Logger.getLogger(UploadController.class);
        @PostConstruct
        public void init(){
            logger.debug("----------- UploadController init() ----------");
        }
    
        @RequestMapping(value = "image",method = RequestMethod.POST)
        @ResponseBody
        public Object fileUpload(@RequestParam("file") MultipartFile file, HttpServletRequest request,
                                 @Autowired ApiMessage apiMessage){
    
            if(file != null && !file.isEmpty()){
                String originalFilename = file.getOriginalFilename();
                logger.debug(originalFilename);
    
                //文件保存路径
                File outPath = new File(request.getServletContext().getRealPath("/"),"fileDir");
                if(!outPath.exists() || !outPath.isDirectory()){
                    outPath.mkdirs();
                }
    
                //保存的文件dest File
                File outFile = new File(outPath,file.getOriginalFilename());
                logger.debug(outFile.getAbsolutePath());
                try {
                    //从缓存文件复制到目标文件
                    file.transferTo(outFile);
    
                    //保存文件信息,返回ID
    
    
                } catch (IOException e) {
                    e.printStackTrace();
                    logger.debug(e);
                }
            }
    
            return apiMessage;
        }
    
    
    
    }

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,886评论 18 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,947评论 6 342
  • spring官方文档:http://docs.spring.io/spring/docs/current/spri...
    牛马风情阅读 1,721评论 0 3
  • 您身边的水果管家培英原创31篇原创日记 ,相信日积月累的力量
    原生态鲜果阅读 364评论 0 0
  • 小林下楼走到公司出口 手机的天气软件上还是一片晴朗 台阶下湿漉漉的 坠落的雨滴溅起水花 打湿了小林的脚踝 她抬起头...
    鱼遥远阅读 220评论 0 0