news 2026/6/9 4:39:28

EasyPoi 数据脱敏

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
EasyPoi 数据脱敏

结果

规则

Controller层

@CrossOrigin@GetMapping("/exportStudentsDesensitization")publicvoidexportStudentsDesensitization(HttpServletResponseresponse)throwsIOException{List<Student>studentList=studentService.list();List<StudentExportDesensitization>desensitizations=studentList.stream().map(e->{StudentExportDesensitizationstudentExportDesensitization=newStudentExportDesensitization();BeanUtil.copyProperties(e,studentExportDesensitization,false);returnstudentExportDesensitization;}).collect(Collectors.toList());// 设置响应输出的头类型response.setHeader("content-Type","application/vnd.ms-excel");// 设计导出文件的名称,尽量不要中文StringfileName=newString("导出.xls".getBytes(),"ISO-8859-1");response.setHeader("Content-Disposition","attachment;filename="+fileName);//输出流。ServletOutputStreamout=response.getOutputStream();// 创建参数对象(用来设定excel得sheet的内容等信息)ExportParamsparams=newExportParams();//sheet// title的参数为ExportParams类型,目前仅仅在ExportParams中设置了sheetNameparams.setSheetName("导出");Workbookworkbook=ExcelExportUtil.exportExcel(newExportParams("2412312","测试","测试"),StudentExportDesensitization.class,desensitizations);workbook.write(out);}

导出Entity

@DatapublicclassStudentExportDesensitizationimplementsjava.io.Serializable{/** * 学生姓名 */@Excel(name="学生姓名",height=20,width=30,desensitizationRule="1,6")privateStringname;/** * 学生性别 */@Excel(name="学生性别",replace={"男_1","女_0"},suffix="生")privateintsex;@Excel(name="出生日期",databaseFormat="yyyy-MM-dd HH:mm:ss",format="yyyy-MM-dd",width=20)privateLocalDateTimebirthDay;@Excel(name="进校日期",databaseFormat="yyyy-MM-dd HH:mm:ss",format="yyyy-MM-dd")privateLocalDateTimeregistrationDate;@Excel(name="身份证",desensitizationRule="6_4")privateStringcard;@Excel(name="手机号",desensitizationRule="3_4")privateStringphone;@Excel(name="邮箱",desensitizationRule="3~@")privateStringemail;}

数据库

导入pom

<dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-spring-boot-starter</artifactId><version>4.4.0</version></dependency>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/8 20:09:30

购物车小球动画:点击商品生成飞向购物车的小球动画

最近做了一个小需求&#xff0c;写购物车小球动画效果,给大家分享一下这个功能的源码&#xff0c;以便以后的使用。实现逻辑 每次点击时&#xff0c;拿到点击的位置作为小球的开始位置&#xff0c;再获取到购物车的结束位置。确定了两端位置之后&#xff0c;给小球设置css的pat…

作者头像 李华
网站建设 2026/6/9 17:53:02

16、文档编写工具与 XML 的使用指南

文档编写工具与 XML 的使用指南 1. 基础文档编写工具 1.1 纯文本文件的使用 在文档编写中,最小的实体是纯文本文件。只要文件包含的信息不过多,采用简单的结构就足够了。这里不需要使用 XML,通过标题、段落、缩进以及条目间留出足够的空间,就可以对信息进行结构化处理。…

作者头像 李华
网站建设 2026/6/8 12:21:03

21、Unix/Linux 系统安全与网络监控指南

Unix/Linux 系统安全与网络监控指南 1. 文件传输安全 在 Unix/Linux 系统中,文件传输是常见操作。当地址中省略用户名部分时,系统会使用当前用户名。若要保留文件的权限和所有权,可使用 -p 选项;若要复制目录树,则使用 -r (递归)选项。例如: erikk@unixhost>…

作者头像 李华
网站建设 2026/6/8 14:58:28

如何使用VSCode开发Arduino项目

安装必要插件在VSCode中安装官方扩展"PlatformIO IDE"或"Arduino"。PlatformIO功能更全面&#xff0c;支持多平台开发&#xff1b;Arduino扩展更轻量&#xff0c;适合简单项目。配置开发环境PlatformIO方式&#xff1a; 安装完成后&#xff0c;左侧工具栏会…

作者头像 李华
网站建设 2026/6/9 21:31:04

端到端测试优化:Cypress并行执行提速300%

在持续交付成为主流的今天&#xff0c;端到端测试作为确保软件质量的关键环节&#xff0c;其执行效率直接关系到产品迭代速度。传统的线性测试模式在面对复杂业务场景时往往成为瓶颈&#xff0c;而Cypress作为现代Web测试框架&#xff0c;通过并行化改造实现300%的效率跃升&…

作者头像 李华