文件上传

-----------------------------------------------jsp文件上传---------------------------------------------------

    function uploadfile(e) {
        var layerIndex = '';
        var limit = 10 * 1024; // 10M
        var url="";
        console.log("e.target.files",e.target.files);
        var formData = new FormData();
        var targetLen = e.target.files.length;
        formData.append("id", upcompanyId);
        for (var i = 0; i < targetLen; i++) {
            var fileData = e.target.files[i];
            var filename = fileData.name;
            formData.append(filename, fileData);
        }
            layerIndex = layer.load(1, {shade: [0.1, '#000']});
            $.ajax({
                url:'${ctx}/admin/company/upload.action',
                data: formData,
                type: 'POST',
                dataType : 'JSON',
                processData: false,
                contentType: false,
            }).then(function (res) {
                console.log("res",res);
                if (res.status === 1) {
                    layer.close(layerIndex); //完成加载后关闭loading
                    layer.msg('上传成功');
                    setTimeout(function () {
                        window.location.reload();
                    }, 1000)
                } else {
                    layer.close(layerIndex); //完成加载后关闭loading
                }
            })
    }
---------------------------------------------------java controller----------------------------------------------------------- @RequestMapping(value = "/upload", produces = "text/html;charset=UTF-8")
    public @ResponseBody
    String upload(MultipartHttpServletRequest request,
                  String relationtype, String ch, String token, String iskdr, String filetype,
                  HttpServletResponse response) {
        BaseResult item = new BaseResult();
        response.addHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
        response.setHeader("Access-Control-Max-Age", "3600");
        response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
        try {
            Integer irelationtype = StringUtilsEX.ToIntNull(relationtype);
            if (irelationtype == null) {
                item.setDesc("参数类型不正确!");
                item.setCode(-100);
                return getrsl(item, iskdr);
            }
            boolean bol = false;
            RelationTypeEnum[] relationTypeEnums = RelationTypeEnum.values();
            for (RelationTypeEnum iTypeEnum : relationTypeEnums) {
                if (iTypeEnum.getValue().equals(irelationtype)) {
                    bol = true;
                    break;
                }
            }
            if (!bol) {
                item.setDesc("参数类型不正确!");
                item.setCode(-100);
                return getrsl(item, iskdr);
            }
            RelationTypeEnum sEnum = relationTypeEnums[irelationtype];
            List<String> rpaths = new ArrayList<>();
            // 获取多个file
            for (Iterator<String> it = request.getFileNames(); it.hasNext(); ) {
                String key = it.next();
                MultipartFile imgFile = request.getFile(key);
                String fileName = imgFile.getOriginalFilename();
                int Index = fileName.lastIndexOf(".");
                String ext = fileName.substring(Index + 1, fileName.length());
                String exts = ConfigUtil.get_instances().getuploadext();
                if (!exts.toLowerCase().contains(ext.toLowerCase())) {
                    item.setDesc("上传文件类型不正确,只请允许上文件类型:" + exts + "!");
                    item.setCode(-101);
                    return getrsl(item, iskdr);
                }
                String newFileName = DateUtil.formatDate(new Date(), "yyyyMMddHHmmssms") + "." + ext;
                String uploadpath = ConfigUtil.get_instances().getuploadpath();
                String path = request.getSession().getServletContext().getRealPath(uploadpath); // 文件存储位置
                String fileAdd = DateUtil.formatDate(new Date(), "yyyyMMdd");
                path = path + fileAdd;
                String msg = uploadpath + fileAdd + "/" + newFileName;// 返回存储路径
                File file1 = new File(path);
                if (!file1.exists() && !file1.isDirectory()) {
                    file1.mkdirs();
                }
                File file = new File(path, newFileName);
                imgFile.transferTo(file);
                rpaths.add(msg);
            }
            item.setData(rpaths);
        } catch (Exception e) {
            item.setCode(-900);
            if (DebugConfig.BLUETOOTH_DEBUG) {
                item.setDesc(e.toString());
            } else {
                item.setDesc("系统错误!");
            }
            LogHandle.error(LogType.Other,
                    MessageFormat.format("上传图片错误:{0}", e.toString()),
                    "image/upload");
        }
        return getrsl(item, iskdr);
    }

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值