文件上传

前端:前端

<template>
  <el-upload class="upload-demo" ref="upload" :action="url" :on-preview="handlePreview" :on-remove="handleRemove":file-list="fileList" :auto-upload="false">
	<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
	<el-button style="margin-left:10px" size="small" type="success" @click="submitUpload">上传服务  器</el-button>
	<!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> -->
  </el-upload>
</template>

export default{
    data(){
	    return {
		  fileList: []
	    }
     },
     methods: {
        methods:{
			submitUpload() {
				this.$refs.upload.submit();
				this.getUpgradeFile();
			},
			handleRemove(file, fileList) {
				console.log(file, fileList);
			},
			handlePreview(file) {
				console.log(file);
			}
	}
}

复制代码

spring.xml配置文件:java

<!-- 支持上传文件 --> 
    <bean id="multipartResolver"  
        class="org.springframework.web.multipart.commons.CommonsMultipartResolver" >  
        <!-- 100M -->  
        <property name="maxUploadSize" value="104857600"></property>      
        <property name="defaultEncoding" value="utf-8"></property>     
    </bean>
复制代码

后端 :web

package sino.com.controller;

import java.io.Console;
import java.io.File;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.jfinal.upload.UploadFile;

import sino.com.controller.utils.ResponseMsg;
import x.acs.utils.AcsUtil;

@Controller
@RequestMapping(value="/firewareUpgrade")
public class UpgradeFileController extends com.jfinal.core.Controller{
	
	@Resource
	ResponseMsg responseMsg;
	
	@RequestMapping(value="/operationUpgradeFile", method=RequestMethod.POST)
	public void importUpgradeFile(PrintWriter out, HttpServletRequest request){
		String dirPath = AcsUtil.getFirmwarePath();
		try {
			 // @RequestParam("file") MultipartFile file,  
	        CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(  
	                request.getSession().getServletContext());  
	        // 判断 request 是否有文件上传,即多部分请求  
	        if (multipartResolver.isMultipart(request)) {  
	            // 转换成多部分request  
	            MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;  
	            // 取得request中的全部文件名  
	            Iterator<String> iter = multiRequest.getFileNames();  
	            while (iter.hasNext()) {  
	                // 取得上传文件  
	                MultipartFile f = multiRequest.getFile(iter.next());  
	                if (f != null) {  
	                    // 取得当前上传文件的文件名称  
	                    String myFileName = f.getOriginalFilename();  
	                    // 若是名称不为“”,说明该文件存在,不然说明该文件不存在  
	                    if (myFileName.trim() != "") {  
	                        // 定义上传路径  
	                        String path = dirPath+"\\"  
	                                + myFileName; 
	                        File localFile = new File(path);  
	                        f.transferTo(localFile);  
	                    }  
	                }  
	            }  
	        } 
		      responseMsg.setStatusCode(ResponseMsg.SUCCESS_CODE);
		      responseMsg.setBody(new String("升级文件导入成功!"));
		} catch (Exception e) {
			responseMsg.setStatusCode(ResponseMsg.FAILURE_CODE);
	    	responseMsg.setBody(new String("上传的升级文件被删除!"));
		}finally{
			out.println(JSON.toJSONString(responseMsg));
		}
	}
}

复制代码
相关文章
相关标签/搜索