)
Jakarta EE课程微型资料投递与分发 实验指导(附完整版代码) 摘要:基于之前的HTTP实验(DropsServlet等),我将提供使用H2数据库的版本来改造“资料投递箱”为“临时分享链接”。这个方案实现了:每个文件只允许下载一次(下载后从数据库删除记录)。文件在一定时间后自动过期(使用定时任务每分钟查询并删除过期记录;虽然有轻微延迟,但通过短间隔最小化;相比Redis TTL,H2更适合需要查询/持久化的场景)。其他原功能保持:上传文件+描述、生成ID、HTTP响应(302/201/304/413/415)、XSS转义。为什么用H2:H2是嵌入式SQL数据库,易集成JPA/Hibernate,支持文件模式持久化(数据存盘,重启不丢)。优点:结构化查询(易查看内容)、自动表创建;缺点:清理需定时任务(可能有秒级延迟),但适合您的Jakarta EE项目(无需额外服务器如Redis)。与Redis比较:H2更重但功能丰富(SQL查询);如果需要零延迟,Redis更好,但您指定H2。 代码在IntelliJ IDEA中可直接集成(基于Maven Archetype WebApp项目)。假设项目名为Ht