- 博客(13)
- 收藏
- 关注
原创 利用 iText 实现 PDF 模板导出功能详解
在企业应用中,PDF 文档生成是政务系统、教育管理系统、客户签约系统等场景中的核心功能。通过预定义的 PDF 模板动态填充数据,能够确保文档格式统一、数据准确,同时显著提升自动化效率。iText 作为一款功能强大的 PDF 操作库,支持表单域(AcroForm)的读取与填充,是此类需求的理想解决方案。通过 iText 结合 PDF 模板,我们可以轻松实现数据驱动的文档生成,极大提升文档生成的自动化程度。你可以将此能力封装为一个工具类,在项目中复用。
2025-07-21 20:39:19
585
原创 EasyExcel 导出 + 浏览器 Blob 下载全攻略
📌 后端关键点:🔍 前端要点:🛠 文件损坏问题🌐 乱码解决方案⚡ 性能优化建议📊 多Sheet导出🎨 自定义样式🔄 进度显示(表情包建议:可在适当位置添加🔄表示进度、🎯表示关键点、⚠️表示注意事项等) 下载进度显示: 多Sheet导出: 自定义样式: 通过以上完整方案,你可以实现从后端EasyExcel导出到前端Blob下载的全流程功能,适用于各种报表导出场景。
2025-07-04 22:17:36
1103
原创 Java Stream高级分组:groupingBy + toMap组合详解与实战指南
【摘要】本文深入讲解Java Stream API中Collectors.groupingBy与Collectors.toMap的组合使用技巧。通过教师评价数据模型的实际案例,演示如何构建双层嵌套Map结构(外层按reportId分组,内层按itemId映射),实现高效数据分类处理。文章详细解析了API参数、冲突处理策略,对比了传统循环与Stream的性能优势,并给出多级分组、复杂值映射等变种应用。最佳实践部分包括键选择原则、空值处理和并行流优化建议,帮助开发者掌握这种声明式数据处理模式,提升代码简洁性和可
2025-07-03 21:47:11
1109
原创 一次性延时器和循坏延时器
清楚延时器 clearInterval(参数一) 传入的参数是你要清除的延时器对象。清楚延时器 setTimeout(参数一) 传入的参数是你要清除的延时器对象。//清楚定时器 参数 是循坏延时器的对象。//清楚延时器 传入的参数是你要清除的延时器对象。//循坏延时器 每个时间段执行函数。//参数二: 延迟时间(单位是毫秒)//参数一:需要执行的具体功能的函数。setTimeout(参数一,参数二)参数一:需要执行的具体功能的函数。参数一:需要执行的具体功能的函数。
2023-11-18 12:51:17
164
1
原创 事件的点击事件(常用)
console.log("获取用户信息",document.querySelector("#userName").value);// e.keycode 获取当前按下的按键Ascll码值 返回的都是大写字母的ascll码值。//ketpress:按下 监听除功能键 (shift/箭头等)除外的按键按下有效果。<input type="text" id="userName" name="user">用户名。console.log('press 键盘按键按下',e.keycode);
2023-11-18 12:46:17
215
1
原创 事件的绑定
/ addEventListener:绑定监听事件,可以给同一元素绑定多个相同事件(不会发生事件覆盖)console.log('绑定事件的元素(事件源)',e.currentTarget)addEventListener:绑定监听事件,可以给同一元素绑定多个相同事件(不会发生事件覆盖)console.log('事件对象,有事件相关的信息e', e);console.log('触发事件的元素',e.target)// this 指向绑定事件的元素(事件源)// 绑定相同的多个事件时,后面的会覆盖前面的。
2023-11-12 21:03:01
334
1
原创 节点操作(Dom)
var newLi1=document.createElement('li')//创建标签。var newLi=document.createElement('li')//创建标签。//firstElementChild: 获取第一个子元素(子标签)节点。//lastElementChild: 获取最后个子元素(子标签)节点。//nextElementSibling 获取下一个兄弟标签节点。//lastChild:获取最后一个子节点。//children:获取所有子标签节点。
2023-11-12 11:10:54
81
1
原创 使用属性方法操作样式
box1.classList.toggle('list')//添加 (无测添加)//toggle():切换指定元素的指定的类名,有则移除。//toggle():切换指定元素的指定的类名,有则移除。//contains():判断指定元素是否含有指定的类名。//contains():判断指定元素是否含有指定的类名。//remove():移除指定元素的指定的类名。//remove():移除指定元素的指定的类名。//add():给指定元素添加指定的类名。//add():给指定元素添加指定的类名。
2023-11-12 10:06:27
104
1
原创 方法获取属性
div id="box" name="para" class="main" data-index="1" data-price="99.88">盒子</div>//注意 自定义属性不能直接用元素点(box1.name)的方式去获取,要先获取dataset属性。//注意 自定义属性不能直接用元素点(box1.name)的方式去获取,要先获取dataset属性。//.getAttribute('key') 通过方法获取标签上的属性。//自定义属性的获取 (标签上的data-)//可以获取元素的属性和方法。
2023-11-12 09:59:04
133
1
转载 学习笔记(锚点的应用)
一、锚点在我们学习HTML的过程中,要理解写页面的作用,最初写页面的本质是为了文章服务的,一篇文章如果太长,我们想、或者回到某一个段落就会费劲儿,所以锚点就是为了精准定位段落,起到目录的效果。(本人理解成就是点击它的时候进行页面的跳转)
2023-10-15 23:13:59
207
1
原创 jdbctemplate的详细说明
本文只适合用于基础的增删改从而降低代码的冗余程度一、适用于增删改的操作 首先我们先创建connection,prepaeredstatement(我是调用jdbcUtil工具类来获取connection对象 ) 该方法传入两个参数分别传入两个参数 一个是写好的sql语句 另一个是可变参数 通过可变参数给sql的语句中的 ?号进行设置值 最后通过rows= ps.executeUpdate();来运行public int dml(String sql,Object...arg)
2023-10-15 14:00:59
122
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅