JAVA 日志框架
前言
程序的日志记录是必不可少的, 这里做简单的描述与总结. 总体而言, 日志框架分为三部分:
- 门面: 类似接口, 也称 门面型日志框架
- 桥接: 通常用于🔗连接门面 与 实现, 也适用于重定向, 比如第三方库内部使用了
JUL
, 我们使用jul-to-slf4j
将其日志流重定向到slf4j
门面上 - 实现: 记录型日志框架
在实际引用中, 为了扩展与安全, 我们通常使用上述的三个组合, 不直接使用实现, 另外见 🐛什么是Log4j 漏洞?
JAVA15 文本块
背景
摘要
文本块是一种多行字符串字面形式,可避免使用大多数转义序列,以可预测的方式自动格式化字符串,并在需要时让开发人员控制格式。
历史
- JEP 355 第一次预览(JDK 13) 提出
- JEP 368 第二次预览(JDK 14), 两个新的转义序列
- JEP 378 正式发布(JDK 15)
记录数据修改前后的变化
背景
追踪数据变化在各种审查场景中是一个常见的需求. 在这里我记录一个常见的错误实现, 并提供一个从基础到完整可用的框架实现. 在这里我选用 Hibernate 6.4.Final 作为框架依赖.
常见的错误实现
以下摘自 Java实现记录对象修改前后的变化 , 可见该方法明显存在以下问题:
- 依赖暴力反射
- 字段存在性能问题
- 在现代 ORM 框架下会遇到大量常见的运行时错误
JAVA 的 Service 模式
MySQL 时区与时间类型
Windows 文件链接
0%