欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java文件上传--简单实现

程序员文章站 2024-02-19 11:31:58
...

1,前端jquery代码:

//封装上传参数
	var files = $("#photoClick")[0].files; //photoClick是<input type = 'file' id ='photoClick'/>标签
	var formData = new FormData();
	for(var i = 0; i < files.length; i++){
		// 此处可传入多个参数
		formData.append('file', files[i]);
	}

//这里就不用描述了,使用ajax,传入后台即可

 

 2,controller代码 : 

//上传图片controller
    @RequestMapping(value="/smGoodsTp/uploadTp", method= RequestMethod.POST)
    @ResponseBody
    public String selectSmGoodsTypeAll(@RequestParam(value = "file") List<MultipartFile> list, HttpServletRequest request) throws IOException {
        //申请一个返回变量
        JSONObject res = new JSONObject();
        List<String> img_url_list = new ArrayList<>();

        //文件不为空,进行上传
        Properties properties = new Properties();
        properties.load(this.getClass().getResourceAsStream("/resource/common.properties"));
        String path =  properties.getProperty("uploadFileUrl"); //这里我是给目标路径放到公共资源文件里面的,这里也可以写死上传到那个路径下面
        for (MultipartFile file : list) {
            //文件夹不存在,就创建
            File file1 = new File(path);
            if (!file1.exists()) {
                file1.mkdirs();
            }

            String fileName = file.getOriginalFilename();
            try {
                file.transferTo(new File(file1, fileName));
                img_url_list.add("../images/goodImgs/"+fileName);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        res.put("fileUrlList", img_url_list); //文件的集合

        //返回操作结果
        return  res.toJSONString();
    }