SpringBoot系列——附件管理:整合业务表单实现上传、回显、下载

boyanx2个月前技术教程9

  前言

  日常开发中,大多数项目都会涉及到附件上传、回显、下载等功能,本文记录封装通用附件管理模块,并与业务模块进行整合实现上传、回显、下载

  我们之前已经对文件上传下载有过记录,传送门:基于“formData批量上传的多种实现” 的多图片预览、上传的多种实现、formData批量上传的多种实现、自定义input文件上传样式,这里也是基于之前的写一个完整例子

  技术栈:layui + thymeleaf + springboot

  代码编写

  项目结构

  前端

  定义模板

  脚本

  后端

  Vo类

  Controller

  测试效果

  test.html页面有两个测试表单,分别整合附件管理模块,需要引入在线jq、layui依赖,再引入我们的附件管理css、js脚本

  上传

    //表单提交
    function submit1() {
        //调用自己的保存业务
        let testFormData = $("#testForm1").serializeObject();
        console.log(testFormData);

        //上传附件
        Attachment.upload("123456");
    }

  上传的文件在AttachmentVo的files数组中

  回显可编辑

    //表单回显(可编辑)
    function showForm1() {
        //回显基础数据
        $("#testForm1").form({username:"张三",age:18});

        //回显附件
        Attachment.showDndEditAttachments("123456");
    }

  重新编辑时,删掉的附件在AttachmentVo的deletes数组中,新上传的附件在files数组中

  回显不可编辑

    //表单回显(不可编辑)
    function showForm2() {
        //回显基础数据
        $("#testForm2").form({username:"李四",age:81});

        //禁用表单、以及隐藏按钮
        $("#testForm2 input").prop("disabled", true);
        $("#button21").remove();
        $("#button22").remove();

        //回显附件
        Attachment.showDndDownloadAttachments("7890");
    }

  不可编辑的回显中,可以进行下载附件操作

  下载

  后记

  不同的业务表单再也不用自己维护附件,直接引入我们通用的附件管理模块,快速实现功能、风格统一

  代码开源

  代码已经开源、托管到我的GitHub、码云:

  GitHub:https://github.com/huanzi-qch/springBoot

  码云:https://gitee.com/huanzi-qch/springBoot


版权声明

作者:huanzi-qch

出处:
https://www.cnblogs.com/huanzi-qch

若标题中有“转载”字样,则本文版权归原作者所有。若无转载字样,本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利.

相关文章

《SpringBoot系列》从听过到游刃有余,进阶划水摸鱼

GitHub:https://github.com/huanzi-qch/springBoot码云:https://gitee.com/huanzi-qch/springBootSpringBoot系...

酷瓜云课堂(内网版)v1.0.6 发布,局域网在线学习平台

更新内容增加刷新 opcache 功能增加清理测试数据脚本首页轮播 + 课程合并为首页缓存强化文章 | 提问 | 课程列表参数检查优化课程学习时长同步优化排序条件,改善分页重复问题优化文件上传优化学员...

SpringBoot+Dubbo+Zookeeper+Redis+MQ分布式快速开发平台源码

if-framework是一个分布式快速开发平台,使用SpringBoot+Dubbo+Zookeeper+Redis+Mysql+MQ等框架,包含:管理员列表、角色管理、菜单管理、定时任务、参数管理...

一个基于NetCore开发的前后端分离CMS系统

今天给大家推荐一个开源的前后端分离架构的CMS建站系统。项目简介这是一个基于.Net 3构建的简单、跨平台、模块化建站系统。系统业务简单、代码清晰、层级分明、全新架构便于二次扩展开发。支持多种数据库,...

采用 Spring Boot + MyBatis搭建的绝美博客系统源码免费分享

Spring Boot 相对于传统的SSM框架的优点是提供了默认的样板化配置,简化了Spring应用的初始搭建过程,如果你不想被众多的xml配置文件困扰,可以考虑使用Spring Boot替代,今天小...

超级奈斯的springboot在线教育平台系统

嗨,我是孟哥,今天给大家介绍一个超级奈斯的springboot在线教育平台系统,下面介绍一下这个系统吧。涉及技术本项目核心技术采用:SpringBoot+mybatis,前端:layui开发工具:id...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。