首页 java开发 springmvc 文件上传

springmvc 文件上传

[2018-08-20 14:05 类别:java开发 阅读(380) ]

maven配置

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

maven将自动引入 commons-fileupload-1.3.3.jar 和 commons-io-2.2.jar

springmvc配置

<!-- 文件上传表单的视图解析器 ,名字不要变-->  
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">  
        <property name="defaultEncoding" value="utf-8"></property>   
        <property name="maxUploadSize" value="104857600"></property>
        <property name="maxInMemorySize" value="40960"></property>  
</bean>

页面表单

<form method="post" enctype="multipart/form-data" action="${pageContext.request.contextPath}/data/importdata">
        <input type="file" name="mobiles"/>
        <button type="submit">导入</button>
 </form>

controller层处理,保存文件到本地

public String importData(MultipartFile mobiles) throws IOException {
    //判断是否有上传文件
    if (mobiles.getSize()>0) {
        //存储到本地的路径
        String path = "/app/updata/";
        File filepath = new File(path);
        //目录不存在则创建目录
        if (!filepath.exists()) {
            filepath.mkdirs();
        }
        //路径+随机生成一个不容易重复的文件名+原文件名
        String pathandfile = path+IdrandomUtil.getStringRandom(10)+mobiles.getOriginalFilename();
        //将上传文件写入本地
        mobiles.transferTo(new File(pathandfile));
    }else{
        return "请选择上传文件";
    }
    return "成功";
 }


关于博主Jansens