- 博客(44)
- 资源 (1)
- 收藏
- 关注
原创 虚拟线程的定义及使用
长期以来,虚拟线程是 Java 中最重要的创新之一。 它们是在 Project Loom 中开发的,自 Java 19 作为预览功能以来一直包含在 JDK 中,自 Java 21 作为最终版本 (JEP 444) 以来,它们已包含在 JDK 中。
2024-04-21 16:21:22 659 1
原创 HotSpot JVM 中的应用程序/动态类数据共享
本文的目的是详细讨论 HotSpot JVM 自 JDK 1.5 以来提供的一项功能,该功能可以减少启动时间,但如果在多个 JVM 之间共享相同的类数据共享 (CDS) 存档,则还可以减少内存占用。
2024-04-21 11:06:24 1039
原创 String和String Pool的异同
为什么 String 是不可变的? 什么是String Pool? 当你写这段代码时,创建了多少个对象 String s1 = new String("CSDN"); ? 拥有字符串池有什么好处? String.intern() 方法有什么作用?
2024-04-14 11:49:48 621
原创 Java调试之JDB命令行调试入门
Java 调试器 (JDB) 是一个简单的 Java 类命令行调试器。 jdb 命令及其选项调用 JDB。 jdb 命令演示了 Java 平台调试器架构,并提供本地或远程 JVM 的检查和调试。
2024-04-07 10:54:57 327
原创 SpringBoot及其特性
Spring 框架提供了很多现成的功能。那么什么是 Spring Boot?使用 Spring 框架,我们可以避免编写基础框架并快速开发应用程序。为了让 Spring 框架提供基础框架,我们需要向 Spring 框架描述有关我们的应用程序及其组件的信息。不只是我们的应用程序组件需要配置;甚至 Spring 框架提供的类也必须在 Spring 框架内配置为 Bean。
2024-04-07 09:20:21 1123
原创 创建云原生应用程序:15个要素
应用程序的15个要素是开发人员为构建云原生应用程序而定义的一种方法。其主要原则如下:-使用声明性格式实现设置自动化,从而最大限度地减少新开发人员加入项目的时间和成本;与底层操作系统有清晰的契约,在执行环境之间提供最大的可移植性; 适合部署在现代云平台上; 最大限度地减少开发和生产之间的差异,实现持续部署,实现最大灵活性; 无需对工具、架构或开发实践进行重大更改即可进行扩展;
2024-04-06 21:43:27 747
原创 JDK安全剖析之安全处理入门
Java 安全包括大量 API、工具以及常用安全算法、机制和协议的实现。Java 安全 API 涵盖了广泛的领域,包括加密、公钥基础设施、安全通信、身份验证和访问控制。Java 安全技术为开发人员提供了编写应用程序的全面安全框架,还为用户或管理员提供了一组工具来安全地管理应用程序。
2024-04-06 11:46:27 1045
原创 JDK类加载器剖析
我之所以深入研究 Java 类加载器,是为了解决一个奇怪的问题。流行出版物,也就是人们所认为的 Java 世界的灯塔,充斥着关于这个主题的相互矛盾和过时的信息。这种矛盾引发了我的调查 — — 在 Java 类加载器的迷宫中寻求清晰的答案。作为一名 Java 开发人员,您可能遇到过ClassNotFoundException一些NoClassDefFoundError神秘的消息,它们会暂时中断您的编码流程。旨在阐明这些问题的在线资源往往反而增加了混乱。
2024-04-05 00:04:19 1427
原创 JVM参数调优
当涉及到 Java 程序时,为了确保它们以最佳性能运行,必须缩小代码与其所运行的虚拟机(如果有)之间的资源差距。实现这一点的方法是查看并特别调优 Java 虚拟机 (JVM)。然而,说起来容易做起来难。
2024-04-03 08:15:39 722
原创 JDK 21 中对虚拟线程的 DDR 支持
DDR(直接转储读取器)是 DTFJ(Java 诊断工具框架)API 的 Java 实现。它通过遍历转储中的 J9 结构来提取虚拟机和应用程序状态。它对于在程序执行的某个点检查 Java 对象很有用。例如,您可以列出所有线程并检查线程的堆栈跟踪。
2024-03-31 17:03:20 405
原创 MethodHandle入门
java.lang.invoke包中的MethodHandle API是一个功能强大的反射和代码生成 API,并且还具有广泛的 JIT 支持。在这篇博文中,我将概述此 API。我将介绍 API 的一些最常用部分,但这不是一份全面的指南。它旨在为您提供一个起点,让您可以开始自行学习更多内容。鼓励读者自己尝试这些示例。
2024-03-31 16:14:31 1093
原创 调试HotSpot的JIT编译的注意事项
通常,当您编译 Java 程序时,它首先由 Java 编译器编译为字节码。 但是,该字节码尚未优化。 在 HotSpot(OpenJDK 的 JVM)中,这在运行时发生,并由 JIT(即时编译器)完成。 这种处理方式允许 JIT 最大限度地利用代码运行的条件,例如硬件,甚至在某种程度上利用输入到程序中的特定数据。
2024-03-31 15:37:42 969
原创 JVM调优场景
每个人都希望学习和开发性能良好的 API,无论自己喜欢什么技术栈,Java 也不例外。优化应用程序一直都是一场艰苦的战斗。有些方面已被记录为指导原则,例如最佳实践,如果遵循这些原则,应用程序的性能可能会更好。
2024-03-31 13:56:08 816
原创 Java自动内存管理技术剖析
Java 的自动内存管理(也称为垃圾收集)是一项强大的功能,它使开发人员可以轻松编写代码,而不必担心释放内存。在许多其他编程语言中,开发人员负责手动分配和释放内存,如果操作不当,可能会导致错误和内存泄漏。借助 Java 的自动内存管理,Java 虚拟机 (JVM) 负责分配和释放内存,这大大简化了编写代码的过程。
2024-03-31 13:47:44 463
原创 PostgreSQL和MySQL的异同
MySQL是一个关系数据库管理系统(DBMS),通过该系统,您可以将数据存储为包含行和列的二维表格。它是一个常用系统,支持许多 Web 应用程序、动态网站和嵌入式系统。PostgreSQL 是一个对象关系数据库管理系统,它可以提供比 MySQL 更多的功能。它可以为您在数据类型、可扩展性、并发性和数据完整性方面带来更大的灵活性。
2024-03-18 10:49:19 367
原创 JDK21新特性及演示代码示例
JDK21版本是 Java SE 平台版本 21 的参考实现,如 Java Community Process 中的 JSR 396 所指定。JDK 21于2023年09月19日发布。
2024-03-15 17:43:14 945
原创 JDK发布信息、历史及未来规划
此页面上的版本信息涵盖了广泛分发或对 Java 开发具有重要意义的 JDK 版本。 它不包括补丁版本或其他一次性版本。
2024-03-15 11:34:47 874
原创 Java垃圾收集器工作原理、优缺点以及使用注意事项
Java 垃圾收集器 (GC) 是自动内存管理组件,负责回收不再使用的对象占用的内存。它们在管理 Java 的动态内存分配方面发挥着至关重要的作用,使开发人员能够专注于应用程序逻辑,而无需手动释放内存。需要GC来防止内存泄漏、优化内存使用并保证Java应用程序的整体性能和稳定性。
2024-03-14 18:15:30 982 1
原创 电气设计常用提示图标(自己画的)含高清原图下载地址
1-1.不可循环利用/不可回收1-2.可循环利用/可回收1-3.静电敏感/ESD 1-4.注意高温/注意烫伤1-5.有电危险/注意危险1-6.高压危险链接: https://pan.baidu.com/s/1xBJa53wAUheEKiEqnFypBg 提取码: pkzm...
2022-05-07 15:33:12 312
原创 JAVA基本数据类型
JAVA基本数据类型基本类型 位数(bit) 字节数(byte) 取值范围 封装类 boolean 1 ~ 0/1 Boolean byte 8 1 Byte char 16 2 Unicode Character short 16 2 Short int 32 4 Integer long 64 8 Lo
2021-03-19 14:42:18 103
原创 JAVA中常用的关键字
JAVA中常用的关键字关键字 版本及时间 应用范围 说明 示例 native JDK 1.0,1996-01-23 Method native关键字主要用于JNI(Java Native Interface),此功能主要实现与C语言的交互。 strictfp JDK 1.2,1998-12-04 Class、Interface、Method strictfp(strict float point)精确精度,由此关键字修饰的类、.
2021-03-19 14:42:05 97
原创 JAVA的并发编程
原子性(Atomic)执行操作过程中不会被中断,要么都不执行。举例:JAVA基本类型的读写操作,变量间赋值不是原子操作 java.concurrent.Atomic.*包下所有类的所有操作可见性(Visibility)多线程场景下,多个线程的共享变量受到其中一个线程修改后,剩余的线程可以立刻看到修改后的值。举列:synchronize Lokc有序性(Orderliness)同一个线程内的所有操作都是串行的,不同线程的操作是无序的(主要原因是指令重排和线程工作内存和主内存
2021-03-19 14:41:53 80
原创 JAVA中的锁
特点互斥性(Mutual Exclusion)同一个时间片只有一个线程具有读写共享变量的权限。可见性(Visibility)多线程场景下,多个线程的共享变量受到其中一个线程修改后,剩余的线程可以立刻看到修改后的值。锁的分类乐观锁(Optimistic Locking)CAS(Compare And Swap)内存地址,旧的预期值,修改的新值。举例:java.util.concurrent.atomic.*版本号悲观锁(Pessimistic Locking)在操作共享
2021-03-19 14:41:37 123 1
原创 MySql的索引
索引的存储B-Tree索引innodb存储引擎使用的B+ Tree。每个叶子节点包含下一个叶子节点的指针,其所有的值都是有序存储,并且每个叶子节点至根节点的距离是相同的。索引查询保证按照索引的最左边前缀(leftmost prefix of the index)来进行查询(必须从索引的最左边的列开始,不能跳过索引列,不能使用索引中范围条件右边的列(eg:like))。索引排序按索引顺序扫描。多表查询且ORDER BY中所有列都是第个表的列,其他情况使用filesort。 fil
2021-03-19 14:41:08 92 1
原创 分布式事务
两阶段提交(2PC)三阶段提交(3PC)https://blog.csdn.net/fkngn/article/details/108788517https://blog.csdn.net/weixin_34365417/article/details/85816639?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&dist_request_id=
2021-03-19 14:40:27 85
原创 分布式缓存
Redisredis是单进程单线程的。数据类型字符串(String)任何形式的字符串。最大容量512MB。列表(List)有序的字符串列表,通过双向链表实现,两端新增元素的复杂度为O(1),访问两端10条左右的数据的速度很快。哈希(Hash)field(字段)-value(值)。无序集合(Hash Table,Set)每个元素不同,但是不能重复,一个Key最多可以存储(,32bit系统)个数据。有序集合(Sorted Set)集合中的元素有序且每个元素都...
2021-03-19 14:39:59 86
原创 Spring的事务
原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)使用方式编程式事务TransactionTemplate:transactionTemplate.execute(new TransactionCallback<Boolean>){@Overridepublic Boolean doInTransaction(TransactionStatus status){}}Platfo...
2021-03-19 14:37:52 75
原创 JAVA的多线程
默认main线程(用户线程)、GC线程(守护线程)线程的实现Thread类Thread实现了Runable接口,重写run方法,调用start方法启动线程。package org.thread;public class MyThread extends Thread { @Override public void run() { //TODO } public static void main(String[] args) {
2021-03-19 14:37:25 88
翻译 用于通过声波捕获显示视觉,触觉和音频的全息显示(A volumetric display for visual, tactile and audio presentation using acous)
Ryuji Hirayama, Diego Martinez Plasencia, Nobuyuki Masuda& Sriram Subramanian2019年1月31日接收2019年8月15日收录2019年11月13日网上公开摘要科幻电影描绘的体积系统不仅提供视觉内容,而且还提供触觉和听觉的三维(3D)内容。基于扫掠体表面[1],[2],全息术[3],光晶体学[4],等离激元[5]或双凸透镜[6]的显示器可以创建3D视觉内容,而无需眼镜或其他仪器。但是,它们运行缓慢,.
2020-09-12 20:47:32 2662 2
Arduino完全实战-epub版
2019-06-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人