- 博客(18)
- 收藏
- 关注
原创 EasyExcel的设计
按行处理 Excel 数据,在常用的读取校验保存场景下,AnalysisEventListener类 内必须定义一个 List属性 暂存解析到的数据,以减少数据库IO。不加入Spring 容器管理,List属性 更安全易用,每次使用new 一个 AnalysisEventListener,也更便于 千万行数据 的垃圾回收。SpringBoot IOC 容器管理 单例类,但为什么 EasyExcel 没有加入 SpringBoot 的管理?读取器 ExcelReader 构建上下文,
2023-10-09 16:11:04 91 1
原创 test-java-monitor
建议可以查看某个Web服务进程的文件打开数目,命令为lsof -p | wc -l,也可以查看系统中打开文件数目最多的前几个进程,命令为lsof | awk '{print $2}' | sort | uniq -c | sort -nr | head。- `netstat -anp`: 显示所有网络连接的状态 - `grep "$port"`: 查找指定端口号的连接 - `grep $pid`: 查找指定进程ID的连接 - `wc -l`: 统计行数,即符合条件的连接数量。
2023-07-14 08:56:18 110 1
原创 数学通识-概率统计
基本事件:一次试验的每一个可能结果;基本事件有等可能性古典概率公式:P(A)=k/n=事件A所含基本事件的个数/基本事件总数必然事件:事件A所含基本事件的个数=基本事件总数,即 P(A)=1掷两个骰子a,b,n=36,即a=1,b=1~6;两个骰子点数加和是5的k=4,即 a=1,b=4;a=2,b=3;a=3,b=2;a=4,b=1;则 P(A)=4/36=9;而 点数和为2和12的概率最小,P(A)=1/36;点数为7的概率最大,P(A)=6/36=1/6。
2023-07-14 06:15:00 227 1
原创 bugfix-sb-static外部化配置
解决方案:去掉 WebMvcConfigurer实现类 中的第一条配置。# 外部化配置优先于内部。3. 请求过来后分发,查找请求处理器。2. 初始化请求处理器链。idx2 哪里来的?外部化配置的执行路径。1. 加载yml配置。
2023-07-10 16:16:19 44 1
原创 数学通识-数字
数学方法是 有规律的。研究:1. 具体->抽象:算数、几何 -> 代数(方程、虚数)1.1 单点->网状:->函数、向量1.2 静态->动态:->微积分2. 确定->不确定性:->概率和统计。
2023-06-18 21:43:16 256
原创 设计模式-特例
数据持久化方式:每日 23:30:00 定时保存到数据库,删除缓存。代码设计:GetMapping 获取文章时,切面自增计数。高并发 自增 - 文章浏览量设计。计数维度:IP + 文章ID。
2023-05-21 13:06:45 69 1
原创 设计模式-类交互-非订阅
模板方法表达,1. 一个问题有不同方式,每种方式都需要拆解成多步骤(方法)解决,可以把解决步骤定下来,形成模板。如 DispatcherServlet#doDispatch2. 枚举一个功能的所有操作方式,封装在模板里。典型实现:RedisTemplate,子类可以重写模板类 StringRedisTemplate。注意模板方法的划分粒度,合适的划分可以解耦,太详细就没必要,不如写一个 pipeline。CRUD:[组装数据,rest请求,数据转换],[入库前校验,入库] 是一个模板方法的两个步骤。
2023-05-21 06:45:00 77 1
原创 设计模式-类扩展-非代理
AOP获取单例切面JavaIO 实现 :BufferedInputStream f = new BufferedInputStream(new FileInputStream(new File(“c:/test.txt”)));切面匹配拦截器 桥接模式代理模式:扩展目标方法,通过重写/实现装饰器模式:实现类里 定义接口属性,实例化时传入另一个实现类,可以在一个实现类里面调用另一个实现类适配器模式:适配器 重在 语义——转换(外部传参,内部结构)。其实现方式可以是 接口默认方法,可以是
2023-05-14 21:52:44 47
原创 设计模式-类扩展-代理
日常 POJO 只增不改没问题的。字段命名不规范也不要改。方法只有一处调用,或者是你开发的历史版本,改掉问题不大,多测测。但其他情况,不要改老代码,考虑在代码上做扩展,原因是:1. 看不惯想整合?改错了就是事故2. 改东西要花时间的,开发要时间,测试要时间,验收也要时间3. 底层框架里的类你改不了。
2023-05-14 17:53:29 52
原创 设计模式-类创建
程序 以 类 为 单位, 组织开发。类,本身就是一种抽象,抽象了 真实存在 的 对象。这就像 蛋糕模具,模具总是完整的,但做出来的蛋糕可能是有残角的。我们定义类,就是定义了一个完整的模具,实例化的对象可能属性值为空,或是 方法从未被使用过。类 的 特性:1. 封装-访问控制:每个事物有自己的边界、内在关联2. 抽象 -接口、抽象类、函数、宽泛命名、添加注释:抽象简化问题,只关注功能不关心实现细节3. 继承+多态-重写、实现,超出四层用 -> 组合,扁平化接口 定义了 功能。飞翔 接口。
2023-05-14 07:15:00 48
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人