[rank_math_breadcrumb]

Maven 使用笔记

导出依赖包 dependency:copy-dependencies-DoutputDirectory=D:\Work\Project\Project.UX\lib Java 打包 <build> <finalName>ms-plugin-notify-nie</finalName> <plugins> <!–这个可以把包和依赖包, 打成一个

Web 开发- Spring 笔记

FAQ Q: Spring 的核心概念? Q: Spring MVC和SpringBoot的区别是什么? Q: Spring 的 Bean 加载过程是怎么样的? Q: Spring 的Configuration, Service, Componet注解有什么不同

Java 调试常用技能

连接跳板机调试 有时候需要访问连接跳板机才能访问的资源,这时可以通过开 SSH 通道解决。 使用 Vscode 或 MobaXterm 连接跳板机,设置 SSH 通道端口。在 Java 的启动参数,设置到本地通道端口的代理即可。例如端口设置为 1234,那么在 Java 的启动参数添加 -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=1234

Java 容器 FAQ

Q: HashMap的底层原理 A: HashMap底层用的是拉链法. Hash表为链表的数组. 先计算Hash值, 在数组里找到对应的链表, 检查值存不存在, 如果不存在, 在链表里追加。 Q: HashMap的Hash函数是怎么样的? A: 对象的hasCode(), 然后进行一定扰动, 让其分布均匀。所以 HashMap 的 Key 一定是要可以被哈希的,int 等 原始类型不能作为 Key

Java 开发常用库

Guava: Google Core Libraries for Java https://github.com/google/guava Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库,例如:集合 [collections] 、缓存 [caching] 、原生类型支持 [primitives support] 、并发库 [concurrency libraries] 、

Java 反射常用实践

动态加载类 获得一个 ClassLoader并调用其 loadClass()方法: public class MainClass { public static void main(String[] args){ ClassLoader classLoader = MainClass.class.getClassLoader(); try { Class aClass = classLoader.

JDBC 和连接池

连接池 HikariPool HikariCP 是一个高性能的 JDBC 连接池,广泛应用于 Java 应用程序中。它以其快速、简单和可靠而著称,能够在各种环境中提供卓越的性能 配置示例 要使用 HikariCP,可以通过多种方式进行配置,例如使用 HikariConfig 类、直接实例化 HikariDataSource 或使用属性文件。以下是一些常见的配置示例: 使用 HikariConfig

Java FAQ

Q: SerialVersionUID 的作用 A: serialVersionUID适用于Java的序列化机制。简单来说,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现

如何优雅实现 Java 泛型类的类型参数化

#! https://zhuanlan.zhihu.com/p/461097572 如何优雅实现 Java 泛型类的类型参数化 首发于公众号【KAMI说】(kami-said),原文:《如何优雅实现 Java 泛型类的类型参数化》 反射机制是Java的一个非常实用的特性. 基于反射, 我们可以实现下面的接口 <T> T foo(…, Class<T> tClass);