Java 中为什么要避免使用 Finalizer?
Java 中的 finalize() 方法是 Object 类自带的一个方法,因所有的类都继承自 Object,所以所有类都是 Object 的子类,我们在子类重写 finalize() 方法就可以说使用了 Finalizer,使用其的目的 …
阅读更多Java 中的 finalize() 方法是 Object 类自带的一个方法,因所有的类都继承自 Object,所以所有类都是 Object 的子类,我们在子类重写 finalize() 方法就可以说使用了 Finalizer,使用其的目的 …
阅读更多因 Java 中没有命名参数的概念,当一个类的构造器可选参数太多的时候,代码可读性会变得很差。于是,建造者模式(Builder Pattern)应运而生。 本文首先举了一个真实的例子,引出构造器可选参数太多时应如何去处理的问题。然后,分析传 …
阅读更多Java 7 中引入了 try-with-resources 特性来保证资源使用完毕后,自动进行关闭。任何实现了 java.lang.AutoCloseable 接口的类,都可以看作是资源,也都可以使用该特性。本文将详细介绍该特性的使用方法 …
阅读更多使用 Java 原生方式访问 PostgreSQL 数据库时,偶然发现 JDBC Driver 42.3.0 读取 BigDecimal 时发生小数点前的 0 全部被抹掉的 Bug,特记录于此。
阅读更多本文首先将介绍在 Java 8 之前,传统的 Date 与 String 相互转换的工具类是怎么实现的;接着再探索在 Java 8 新引入 Instant 后,如何实现 Instant 与 String 的互转,以及新的工具类的实现。
阅读更多本文的大部分内容翻译整理自 PostgreSQL 官方文档,作学习及知识总结之用。 本文依据官方 PostgreSQL 16 文档介绍如何创建数据库结构以保存数据。在关系型数据库中,原始数据存储在表里,所以本文主要介绍如何建表、修改表,以及 …
阅读更多表分区指的是将逻辑上的一个大表分割为物理上的一个个小块,使用表分区可以带来性能上的提升与存储上的优化。PostgreSQL 支持基础的表分区功能。本文将依据官方 PostgreSQL 16 文档来介绍为什么使用表分区?以及表分区的具体使用方 …
阅读更多继承是来自于面向对象数据库的概念,其为数据库设计带来了新的可能性。 先看一个例子:假定我们正在构建一个数据模型来存储所有的城市,而城市中有的是普通城市,有的是省会城市,如何进行表设计呢?继承特性就能很巧妙的表示这种关系。 下面为建表语句: …
阅读更多Moshi 是一个可用于 Java 与 Kotlin 的 JSON 序列化与反序列化库,其主要使用 Kotlin 编写。本文以样例代码的方式来演示该库在 Java 中的使用。
阅读更多VS Code 中有一个非常易用的、用于 API 测试的扩展,名为 REST Client。可以在 VS Code 中使用该扩展来发送 HTTP 请求及接收响应,其语法比 cURL 命令更简单,是我们开发人员在测试 API 时的一个不错的选 …
阅读更多