工作实践
文章平均质量分 96
分享一些工作实践案例
挥之以墨
一个半路出家的加瓦攻城狮,擅长搬砖
展开
-
【MongoDB】数据的自动过期,TTL索引
在近期的工作中,使用了MongoDB来保存了一些日志数据,但是这些日志数据具有一定的时效性,也就是按照业务的需要,保存xx天即可,在超过了这个时间之后,需要删除过时的日志。按照之前的做法,可以使用定时任务,例如:Spring的定时器,xxl-job等工具,在每天凌晨的时候删除数据,这种方法虽然可行,但是需要额外的编码工作。那有没有一种方式能够简单的搞定过期数据的清理呢?当然,MongoDB提供了一种TTL索引的机制,可以非常方便的处理这种需求,下面是官方文档,有阅读能力的同学可以直接看这个文档。原创 2024-04-18 15:19:17 · 1393 阅读 · 0 评论 -
【MongoDB】多级嵌套数组的操作 含Mongo Shell 和 MongoTemplate的增删改细节
本文整理了操作多级嵌套的数组的Mongo Shell、js脚本,以及使用MongoTemplate的操作方式,操作嵌套数据需要使用到 MongoDB 的两个特性: $[]和arrayFilters,本文中的数据一共嵌套了两层数组,包含了一级和二级嵌套数组的操作,篇幅较长,非常详细,快来看看吧!原创 2023-02-09 12:40:00 · 2838 阅读 · 4 评论 -
EasyExcel+POI制作带有有效性校验及下拉联动的Excel模板
名称管理器、indirect公式、数据有效性,我这里使用的是WPS,所以下面会通过WPS来进行举例,微软的Office在类似的位置也有一样的功能,使用Office的同学可以自行研究一下。名称管理器类似于一个数据字典的功能,有名称(key)和引用位置(value的引用)两个主要字段,所谓的引用位置就是需要引用的单元格坐标,单元格可以是1个,也可以是1行或者1列。在当前的需求中姓名和id是一一对应的indirect公式这个公式可以用来引用名称管理器的配置,通过=indirect(名称)数据有效性。原创 2023-08-23 11:37:41 · 3203 阅读 · 5 评论 -
EasyExcel 低内存导出大数据量的Excel方案探索 50万行 50列 (附:实现代码)
最近接到一个需求,需要从服务器中导出大量数据到Excel中,数据量大概为50万行,50列,借助这个机会,就想对使用使用低内存导出大数据量的方案进行探索,总结出一个通用可行性方案,以方便日后随时可以使用,同时也分享一下探索的过程。降低存入到内存中的数据,使用分批次查询、分批次插入数据的方式。尽可能的减少并发,避免使用多线程操作Excel,同时,还可以通过队列做异步和限流,排队处理导出请求。考虑到Excel文件过大无法操作,可以将一个大文件拆分为多个小文件。原创 2023-02-20 19:54:29 · 6803 阅读 · 1 评论 -
【SpringBoot实践】Web表单请求或JSON请求的自定义转换器(赋LocalDate、LocalDateTime的通用转换)
自定义反序列化器,除了继承的类不一样,实现方法与上面的Converter/*** LocalDateTime JSON反序列化工具} }/*** LocalDateTime JSON反序列化工具} }/*** LocalDateTime JSON反序列化工具} }/*** LocalDateTime JSON反序列化工具} }JsonParser;import com/*** LocalDateTime JSON反序列化工具。原创 2023-04-25 11:53:56 · 2890 阅读 · 1 评论