Java实现下载excel模板,并实现自定义下拉框
@GetMapping("excel/download")@ApiOperation(value = "模板下载")public void getUserRecordTemplate(HttpServletResponse response, HttpServletRequest request) throws IOException {OutputStream outputStream = response.getOutputStream();InputStream inputStream = new ClassPathResource("example/excel/download_template_user_record.xlsx").getInputStream();try {String fileName = "导入模板";String fileName3 = URLEncoder.encode(fileName, "utf-8");response.setHeader("Content-disposition", "attachment;filename*=utf-8''"+fileName3+".xlsx");response.setContentType("application/msexcel");// 定义输出类型response.setCharacterEncoding("UTF-8");//获取该类声明的所有字段Field[] fields = UserRecordExcelExportResult.class.getDeclaredFields();//响应字段对应的下拉集合Map<Integer, String[]> map = new HashMap<>();Field field = null;
//从数据库里获取下拉框选项List<XcUserLevel> list = xcUserLevelService.list();
// List<SysDept> list1 = sysDeptService.list();List<String> collect = list.stream().map(XcUserLevel::getName).collect(Collectors.toList());
// List<String> collect1 = list1.stream().map(SysDept::getName).collect(Collectors.toList());
//找到需要对应的下拉框位置
// map.put(11,collect1.toArray(new String[0]));map.put(12,collect.toArray(new String[0]));// 循环判断哪些字段有下拉数据集,并获取/*for (int i = 0; i < fields.length; i++) {field = fields[i];// 解析注解信息DropDownSetField dropDownSetField = field.getAnnotation(DropDownSetField.class);if (null != dropDownSetField) {//调用下拉框数据源的方法String[] source = ResoveDropAnnotationUtil.dynamicListResove2(dropDownSetField, field.getName(),staffId);if (null != source && source.length > 0) {map.put(i, source);}}}*/ExcelWriter excelWriter = EasyExcel.write(outputStream)
//将保存下拉框的map放入excelWriter.registerWriteHandler(new CustomSheetWriteHandler(map)).withTemplate(inputStream).build();WriteSheet writeSheet = EasyExcel.writerSheet(0,"Sheet1").build();excelWriter.write(new ArrayList<>(), writeSheet);excelWriter.finish();outputStream.close();} catch (Exception e) {e.printStackTrace();}}
从resoues包里获取excel文件

相关文章:
Java实现下载excel模板,并实现自定义下拉框
GetMapping("excel/download")ApiOperation(value "模板下载")public void getUserRecordTemplate(HttpServletResponse response, HttpServletRequest request) throws IOException {OutputStream outputStream response.getOutputStream();InputStream…...
postgres docker安装
mkdir -p /root/postgresql/data docker pull postgres:14 docker run --privilegedtrue --name postgres -e POSTGRES_PASSWORD123456 -e ALLOW_IP_RANGE0.0.0.0/0 -p 5432:5432 -v /root/postgresql/data:/var/lib/postgresql/data -d postgres:14#地址:192.168.3…...
数据库原理与应用期末复习
目录 第 1 章 概述 第 2 章 关系模型的基本概念 第 3 章 SQL 语言 第 4 章 中级 SQL 第 5 章 高级 SQL 第 6 章 关系代数语言 第 7 章 数据库设计和 ER 模型 第 8 章 关系数据库设计 第 13 章 事务 第 14 章 并发控制与恢复 第 1 章 概述 Database-management system…...
数据库知识汇总2
一. 范式 定义:范式是符合某一种级别的关系模式的集合。 关系数据库中的关系必须满足一定的要求。满足不同程度要求的为不同范式; 一个低一级范式的关系模式,通过模式分解(schema decomposition)可以转换为若干个高一…...
CS·GO搬砖流程详细版
说简单点,就是Steam买了然后BUFF上卖,或许大家都知道这点,但就是一些操作和细节问题没那么明白。我相信,你看完这篇文章以后,至少会有新的认知。 好吧,废话少说,直接上实操! 首先准…...
《长寿养生报》是科普报刊吗?参与评选的科普作品需要注意什么?
随着各地医师职称评选标准改革的推广,目前不少省份已经将发表“科普作品”视作参与参与职称评选的工作成果。这一改革,也让《长寿养生报》这类报刊受到不少医护工作者的青睐。 《长寿养生报》是科普报刊吗?参与评选的科普作品需要注意什么&am…...
React native 原生环境搭建(最新版本RN环境搭建,不是expo)
前言 React Native 是 Facebook 推出的一款用于开发移动应用的框架,开发者可以用 JavaScript 和 React 等技术,一次编写代码,然后同时部署到 iOS 和 Android 平台上,大大节省了开发时间和人力成本,避免了为每个平台单…...
Unity Excel转Json编辑器工具
功能说明:根据 .xlsx 文件生成对应的 JSON 文件,并自动创建脚本 注意事项 Excel 读取依赖 本功能依赖 EPPlus 库,只能读取 .xlsx 文件。请确保将该脚本放置在 Assets 目录下的 Editor 文件夹中。同时,在 Editor 下再创建一个 Exc…...
XML结构快捷转JSON结构API集成指南
XML结构快捷转JSON结构API集成指南 引言 在当今的软件开发世界中,数据交换格式的选择对于系统的互操作性和效率至关重要。JSON(JavaScript Object Notation)和XML(eXtensible Markup Language)是两种广泛使用的数据表…...
数据挖掘——支持向量机分类器
数据挖掘——支持向量机分类器 支持向量机最小间隔面推导基于软间隔的C-SVM非线性SVM与核变换常用核函数 支持向量机 根据统计学习理论,学习机器的实际风险由经验风险值和置信范围值两部分组成。而基于经验风险最小化准则的学习方法只强调了训练样本的经验风险最小…...
ImageNet 2.0?自动驾驶数据集迎来自动标注新时代
引言: 3DGS因其渲染速度快和高质量的新视角合成而备受关注。一些研究人员尝试将3DGS应用于驾驶场景的重建。然而,这些方法通常依赖于多种数据类型,如深度图、3D框和移动物体的轨迹。此外,合成图像缺乏标注也限制了其在下游任务中的…...
智能工厂的设计软件 应用场景的一个例子:为AI聊天工具添加一个知识系统 之11 方案再探之2 项目文件(修改稿1)
(以下内容是第二次重建项目(“方案再探”)时的项目附件。) 为AI聊天工具添加一个知识系统 Part1 人性化&去中心化 前情提要 这一次我们暂时抛开前面对“智能工厂的软件设计”的考虑--其软件智能 产品就是 应用程序。直接将这些思维方式和方法论 运…...
详解MySQL SQL删除(超详,7K,含实例与分析)
文章目录 前言1. 删除表中的所有记录基本语法使用场景注意事项运用实例分析说明2. 删除特定记录基本语法使用场景注意事项运用实例分析说明3. 删除单条记录基本语法使用场景注意事项运用实例分析说明4. 删除违反引用完整性的记录基本语法使用场景注意事项运用实例分析说明5. 删…...
uniapp:跳转第三方地图
1.跳转第三方高德地图 //跳转地图 toMap(item){uni.navigateTo({url: (window.location.href https://uri.amap.com/navigation?to${item.lng},${item.lat},${item.shopName}&modecar&policy1&srchttps://gawl.gazhcs.com/wap/index.html&callnative0)}) },…...
深入浅出梯度下降算法:快速抵达函数最小值的方法
引言 梯度是机器学习和优化领域中不可或缺的概念,它为我们提供了理解和调整多维空间中函数行为的工具。本文将详细介绍梯度的定义、性质,并通过具体的一元和多元函数案例展示如何使用梯度下降算法找到最佳参数。 一、梯度的基础知识 1.1 定义与计算 梯…...
RWKV 语言模型
RWKV Language Model是一种独特的循环神经网络(RNN)架构的语言模型,具有诸多优势和特点,在自然语言处理领域展现出了良好的性能和应用潜力,以下是具体介绍: 核心原理 融合RNN与Transformer优点:…...
pycharm如何拉取一个git项目,然后,修改后再上传到自建的项目中?
以chattts为例 https://github.com/2noise/ChatTTS.git 1.建一个虚拟环境,用于项目使用 2.pycharm新建工程 3.忽略 提示 勾选,新建远程仓库 设置账号和密码 设置git路径,一般是正确的,点测试即可 &…...
Java 性能调优实战
性能调优是每个程序员在开发过程中都无法避免的课题,尤其在面对大规模、高并发的系统时,性能优化更是必不可少。本文将根据《Java 性能调优实战》课程的七个模块,深入探讨其中的核心内容,结合实际代码示例,帮助大家更好…...
ctfshow 每日练习 web 区 php特性 1-10
前置知识 这个php特性可以很好的练习我们的白盒简单代码的审计能力 web89 preg_match 正则匹配函数 (绕过 : 换行符绕过 (也可以利用他的数组返回数字进行绕过一下禁止字符的情况)) include("flag.php&q…...
《C++设计模式》单例模式
文章目录 1、简介2、单例模式的种类2.1 饿汉式单例模式:2.2 懒汉式单例模式: 3、单例模式的具体介绍3.1、饿汉式3.1.1、代码示例3.1.2、组成部分3.1.3、优缺点3.1.4、应用场景 3.2、懒汉式3.2.1、代码示例3.2.2、组成部分3.2.3、优缺点3.2.4、应用场景 4…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...
