`

springmvc多文件上传

阅读更多

@RequestMapping(value = "/save.api")
    @ResponseBody
    public String save(MultipartHttpServletRequest req) {
        String userId = req.getParameter("user_id");// 钱宝用户id
        if (StringUtil.isNotNumber(userId)) {
            return jsonpFailed("钱包用户校验错误");
        }
        String username = req.getParameter("username");// 钱宝用户名
        if (StringUtils.isEmpty(username)) {
            return jsonpFailed("钱包用户校验错误");
        }
        String storeName = req.getParameter("storeName");// 门店名称
        if (null == storeName || storeName.length() > 10) {
            return jsonpFailed("门店名称校验错误");
        }
        String workingGroupId = req.getParameter("workingGroupId");// 经营类型
        if (null == workingGroupId || StringUtil.isNotNumber(workingGroupId)) {
            return jsonpFailed("经营类型校验错误");
        }
        String provinceId = req.getParameter("provinceId");// 省
        if (null == provinceId || StringUtil.isNotNumber(provinceId)) {
            return jsonpFailed("省校验错误");
        }
        String cityId = req.getParameter("cityId");// 市
        if (null == cityId || StringUtil.isNotNumber(cityId)) {
            return jsonpFailed("市校验错误");
        }
        String areaId = req.getParameter("areaId");// 区
        if (null == areaId || StringUtil.isNotNumber(areaId)) {
            return jsonpFailed("区校验错误");
        }
        String detailAddress = req.getParameter("detailAddress");// 详细地址
        if (null == detailAddress || StringUtil.isNotNumber(detailAddress)) {
            return jsonpFailed("详细地址校验错误");
        }
        String latitude = req.getParameter("latitude");// 经度
        String longitude = req.getParameter("longitude");// 纬度
        if (null == latitude || null == longitude
                || !StringUtil.isFloatDigit(latitude)
                || !StringUtil.isFloatDigit(longitude)) {
            return jsonpFailed("详细地址校验错误");
        }
        String ownerName = req.getParameter("ownerName");// 门店负责人姓名
        if (null == ownerName || ownerName.length() > 30
                || StringUtil.hasNumberOrSpecialSym(ownerName)) {
            return jsonpFailed("门店负责人姓名校验错误");
        }
        String mobilePhone = req.getParameter("mobilePhone");// 手机号码
        if (null == mobilePhone || !StringUtil.isMobile(mobilePhone)) {
            return jsonpFailed("手机号码校验错误");
        }
        MultipartFile facePicture = req.getFile("facePicture");// 门店正面门头照
        if (null == facePicture || facePicture.isEmpty()) {
            return jsonpFailed("门店正面门头照校验错误");
        }
        List<MultipartFile> internalPictures = req.getFiles("internalPictures");// 门店内景照
        if (null == internalPictures || internalPictures.size() != 3) {
            return jsonpFailed("门店内景照校验错误");
        }
        MultipartFile businessLicense = req.getFile("businessLicense");// 营业执照
        if (null == businessLicense || businessLicense.isEmpty()) {
            return jsonpFailed("营业执照校验错误");
        }
        MultipartFile taxRegistrationCertificate = req
                .getFile("taxRegistrationCertificate");// 税务登记证
        if (null == taxRegistrationCertificate
                || taxRegistrationCertificate.isEmpty()) {
            return jsonpFailed("税务登记证校验错误");
        }
        MultipartFile organizationCode = req.getFile("organizationCode");// 组织机构代码复印件
        if (null == organizationCode || organizationCode.isEmpty()) {
            return jsonpFailed("组织机构代码复印件校验错误");
        }
        /**************************************** 可选项 *************************************************/
        String openTime = req.getParameter("openTime");// 营业时间
        String closeTime = req.getParameter("closeTime");// 营业时间
        String perCapita = req.getParameter("perCapita");// 人均
        if (StringUtils.hasText(perCapita)) {
            if (!StringUtil.isNumber(perCapita)
                    || Long.parseLong(perCapita) > 999999) {
                return jsonpFailed("人均校验错误");
            }
        }
        String fixedPhoneCode = req.getParameter("fixedPhoneCode");// 门店固话
        String fixedPhoneNumber = req.getParameter("fixedPhoneNumber");// 门店固话
        if (StringUtils.hasText(fixedPhoneCode)
                && StringUtils.hasText(fixedPhoneNumber)) {
            if (!StringUtil.isFixedPhone(fixedPhoneCode + "-"
                    + fixedPhoneNumber)) {
                return jsonpFailed("门店固话校验错误");
            }
        }
        String qq = req.getParameter("qq");// QQ号
        if (StringUtils.hasText(qq)) {
            if (!StringUtil.checkQQ(qq)) {
                return jsonpFailed("QQ号校验错误");
            }
        }
        String email = req.getParameter("email");// 电子邮箱
        if (StringUtils.hasText(email)) {
            if (!StringUtil.isEmail(email)) {
                return jsonpFailed("电子邮箱校验错误");
            }
        }
        MultipartFile specialLicence = req.getFile("specialLicence");// 特殊行业许可证
        String recommendPerson = req.getParameter("recommendPerson");// 推荐人邀请码

        ReqStoreInfo reqStore = new ReqStoreInfo();
        reqStore.setUserId(Long.parseLong(userId));
        reqStore.setUsername(username);
        reqStore.setStoreName(storeName);
        reqStore.setWorkingGroupId(Long.parseLong(workingGroupId));
        reqStore.setProvinceId(Long.parseLong(provinceId));
        reqStore.setCityId(Long.parseLong(cityId));
        reqStore.setAreaId(Long.parseLong(areaId));
        reqStore.setDetailAddress(detailAddress);
        reqStore.setOpenTime(openTime);
        reqStore.setCloseTime(closeTime);
        reqStore.setPer_capita(Integer.parseInt(perCapita));
        reqStore.setFixedPhoneCode(Integer.valueOf(fixedPhoneCode));
        reqStore.setFixed_phone_number(Integer.valueOf(fixedPhoneNumber));
        reqStore.setOwnerName(ownerName);
        reqStore.setMobilePhone(mobilePhone);
        reqStore.setQq(qq);
        reqStore.setEmail(email);
        reqStore.setFacePicture(facePicture);
        reqStore.setInternalPictures(internalPictures);
        reqStore.setBusinessLicense(businessLicense);
        reqStore.setTaxRegistrationCertificate(taxRegistrationCertificate);
        reqStore.setOrganizationCode(organizationCode);
        reqStore.setSpecialLicence(specialLicence);
        reqStore.setRecommendPerson(recommendPerson);
        reqStore.setAuditorName(getCurrentUserId() + "");

        try {
            storeService.save(reqStore);
        } catch (IOException e) {
            e.printStackTrace();
            log.error(e.getMessage());
            return jsonpFailed("保存失败");

        } catch (DataValidateException e) {
            e.printStackTrace();
            log.error(e.getMessage());
            return jsonpFailed("保存失败");
        }
        return jsonpSuccess(null);
    }

//多文件上传部分参考自:http://blog.csdn.net/a1314517love/article/details/24183273http://blog.csdn.net/swingpyzf/article/details/20230865

分享到:
评论

相关推荐

    springMVC多文件上传demo

    这个"springMVC多文件上传demo"是一个实例,它展示了如何在Spring MVC应用中实现这个功能。下面将详细介绍相关知识点。 1. **Spring MVC概述** Spring MVC是Spring框架的一部分,它提供了一个用于构建Web应用程序...

    springmvc 多文件上传

    在Spring MVC框架中,多文件上传是一个常见的功能需求,它允许用户通过Web界面一次性上传多个文件。本知识点将深入探讨如何实现Spring MVC中的多文件上传,包括必要的配置、控制器处理和存储策略。 首先,我们需要...

    bootstrap+springMVC多文件上传

    "bootstrap+springMVC多文件上传"是一个典型的Web应用案例,它整合了前端的Bootstrap框架和后端的SpringMVC框架,实现了高效且用户体验良好的多文件上传功能。以下是关于这个主题的详细知识点: 1. **Bootstrap**:...

    SpringMVC多文件上传带进度条

    在本文中,我们将深入探讨如何使用SpringMVC和Ajax实现多文件上传并显示上传进度条的功能。这是一个在Web开发中常见的需求,特别是在处理大文件或批量上传时,用户界面的实时反馈至关重要,以提供更好的用户体验。 ...

    SpringMVC文件上传,多文件上传实例

    在这个“SpringMVC文件上传,多文件上传实例”中,我们将深入探讨如何在SpringMVC环境中实现文件上传功能,包括单个文件上传以及多个文件的批量上传。 1. **文件上传原理**: 文件上传是通过HTTP协议的POST请求来...

    springMVC实现多文件上传需要的jar

    这里,我们主要关注"springMVC多文件上传需要的jar"这一资源,它包含了实现这一功能所必需的Java档案(JAR)文件。 首先,Spring MVC是Spring框架的一个模块,专门处理Web应用的请求和响应。它提供了模型-视图-控制...

    springMVC多文件上传所需jar包

    在Spring MVC框架中,实现多文件上传功能是一个常见的需求,涉及到多个关键组件和技术。下面将详细解释这些给定的jar包以及它们在多文件上传中的作用。 首先,我们来看看核心的Spring框架组件: 1. **spring-core-...

    springMvc单文件多文件上传

    springMvc 文件上传,springMvc 支持单文件和多文件上传,

    SpringMVC文件的上传与下载(包括单一文件与多文件上传,两种下载方式)

    本文将详细讲解如何实现Spring MVC中的文件上传和下载,包括单一文件上传、多文件上传以及两种不同的文件下载方法。 一、单一文件上传 1. 添加依赖:在Spring MVC项目中,我们需要引入`commons-fileupload`和`...

    基于springmvc实现文件上传下载 基于AOP的日志功能

    基于springmvc实现文件上传下载 基于AOP的日志功能基于springmvc实现文件上传下载 基于AOP的日志功能基于springmvc实现文件上传下载 基于AOP的日志功能基于springmvc实现文件上传下载 基于AOP的日志功能基于...

    SpringMVC单文件上传、多文件上传、文件列表显示、文件下载

    本文将详细讲解如何实现SpringMVC中的单文件上传、多文件上传、文件列表显示以及文件下载。 首先,我们需要理解SpringMVC处理文件上传的基本原理。在SpringMVC中,文件上传通常涉及到`CommonsMultipartResolver`...

    IDEA SpringMVC 实现文件的上传下载

    在SpringMVC中,文件上传主要依赖于`CommonsMultipartResolver`,这是Spring提供的一个解析多部分请求的组件。在配置文件中,我们需要添加如下配置启用文件上传: ```xml &lt;!-- 指定最大上传文件大小 --&gt; ...

    springmvc多文件上传和下载

    下面将详细阐述Spring MVC如何实现多文件上传以及文件下载的处理。 ### 多文件上传 1. **配置MultipartResolver**: 首先,我们需要在Spring MVC的配置文件中启用multipart resolver,以便处理多部分HTTP请求,即...

    Spring下的子框架SpringMVC实现多文件上传完整代码

    ### SpringMVC 实现多文件上传的技术要点与实践 #### 技术背景 SpringMVC 是 Spring 框架中的一个重要组成部分,它提供了一种基于 Model-View-Controller(MVC)模式的轻量级 Web 开发框架。利用 SpringMVC,开发...

    基于springMVC的文件上传功能

    在Web应用中,文件上传是一项常见的...总结,基于SpringMVC的文件上传功能涉及到环境配置、控制器编写、视图设计、文件存储策略以及安全措施等多个方面。理解并掌握这些知识点,可以构建出稳定、高效的文件上传系统。

    springmvc上传文件controller,vue

    在实际应用中,你可能还需要处理文件上传进度、错误处理、多文件上传等情况。同时,确保前端和后端的安全性,比如使用CSRF令牌防止跨站请求伪造,以及对上传文件进行适当的权限控制。 最后,项目中的"新建文件夹...

    springmvc带进度条上传源码

    在Spring MVC框架中实现文件上传并提供进度条功能是一项实用且复杂的任务,涉及到前端与后端的交互以及数据传输过程的监控。以下是对这个主题的详细解析。 首先,我们需要理解Spring MVC的基本工作原理。Spring MVC...

    JavaEE企业级开发-----SpringMVC实现 文件的上传下载实验报告.docx

    这将启用基于Apache Commons FileUpload的多部分解析器,用于处理文件上传请求。 然后,我们需要创建一个SpringMVC的Controller来处理文件上传。在Controller类中,可以定义一个方法,使用`@RequestParam("file") ...

    SpringMVC上传文件 SSH上传文件

    首先,我们来看SpringMVC中的文件上传。SpringMVC是Spring框架的一部分,它提供了强大的MVC设计模式支持,使得处理HTTP请求变得更加方便。在SpringMVC中,文件上传主要依赖于`CommonsMultipartResolver`,这是Spring...

Global site tag (gtag.js) - Google Analytics