自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zempty 笔记

没有笔记的学习,太低效

  • 博客(22)
  • 收藏
  • 关注

原创 Phaser 类详解(JUC 并发)

juc 包中一个比较难理解的类,提供的功能丰富

2024-04-23 12:43:56 605

原创 ByteBuffer 详解

Java NIO 中重要的一个类 ByteBuffer

2023-03-02 21:48:40 1008

原创 用自己的域名创建邮箱( 苹果用户订阅 icloud + 服务)

用自己的域名创建个性化邮箱

2023-02-04 17:03:23 529

原创 postman,浏览器测试接口正常,HttpClient 调用就报错

一次奔溃的经历事情是这样的:第三方提供了一个接口需要对接,我就对接了,测试环节的时候怎么都调不通,各种排查,各方人员都动员了起来,就是没有找到问题,下面把问题报错的原因呈上:就是报错 508 ,返回一个空的 Response body.刚开始出现这个问题,我怀疑是不是我的代码哪里没有处理好呢?检查了一遍没有发现什么问题。返回 508 什么意思?508 码表示服务器中断一个操作,因为它在处理具有“Depth: infinity”的请求时遇到了一个无限循环。508 码表示整个操作失败。请求接

2022-10-14 16:17:26 4732

原创 正则表达式(java 版)的理解

java 正则表达式剖析

2022-07-27 18:46:57 485

原创 去重 java 集合: java 集合中元素根据 A 属性去重,保留 B 属性是某一个值的元素 - 知乎

//定义一个新集合,放置去重后的值 List<User> filterUser = new ArrayList<>(); // 根据名字分组用户 Map<String,List<User>> groupByUsers = users.stream(). collect(Collectors.groupingBy(User::getName)); Set<Map.Entry<String,L..

2022-04-13 14:26:24 414

原创 Mac 下载软件提示 no updates found

之前安装过的软件卸载后再次安装的时候发现无发安装了,悲了个催。。。 如图所示:上网查询这个问题折腾了好久也没有折腾出结果,因此再次记录一下折腾的经历。。。上网查询看看同伴们有没有类似的经历,基本上你遇到的问题都是别人填过的坑。对症下药,根据自己的问题和别人提供的解决方案尝试解决。解决不了,不要着急,分析问题的紧急性:优先级较高的,请教一下身边的人;优先级不高的化,放置一下,找一个空闲的时间耐心的分析解决一下。有些软件就是流氓,我们也没办法,也时候工作中就得用它,我这边出现的问题是这样的:第一次安装的时候,由

2022-01-20 13:03:29 1747 2

原创 git submodule 多项目操作管理 - 知乎

开发的过程中有时候会遇到这样的情形: 现在有 A, B , C 三个项目,三个项目各自运行,现在 A 项目用到了 B 和 C 项目,需要把 B 和 C 项目变成 A 项目的的子项目,如何使用 git 来操作和管理呢?父工程引入子工程创建或者拉取远程的父工程项目 A (常规操作)引入 B 工程项目或者 C git submodule add B项目的仓库路径 ./B上面这条命令是在 A 项目目录下面运行,拉取远程的仓库 B ,并且在 A 项目目录下面新建一个 B 目录正常更新提交 A 项目(常规操作 )子工程

2022-01-20 12:55:43 558

原创 遍历二叉树系列 (leetcode 144) - 前序遍历

最近刷了几道题,把思路在此记录一下。刷 leetcode 上的题目,最近也有一点小小的心得:要看懂题目,一定要清楚题目表达的是什么?面试的时候也是,一定要搞懂题目的意思,没看懂就跟面试官沟通一下;不会的题目很正常,平常心,不必灰心学会解题的思路很重要记录一下你的解题心路历程,你在哪个步骤卡住了,怎么突破的等等搜索一下大神们是怎么解决类似问题的(B 站,油管,谷歌等)。什么前序遍历?关于什么是二叉树,二叉树有什么性质,规律等,在此不过多赘述了,直接进入主题 ,leetcode 144 是关于前序遍历的一个题目

2022-01-20 12:42:12 713 1

原创 一文透彻解析冒泡排序

谈一谈冒泡排序看到很多人谈算法题,上来就是一段代码,你去看去吧,自己悟去吧。心塞有的题目老长时间就是不理解。。。本文分析一下啥是冒泡排序?排序就是一组数字,按照顺序排列(从小到大) ,冒泡排序是排序的一个方法:1. 从给定的一组数头部开始,前一个数和后一个数进行两两比较,数字大的移动到后面去,一直比较到数组尾部,最大的数会移动到尾部。2. 循环上述操作,直到这一组数按照从小到大的顺序排列。聊一聊赋值操作数据的赋值操作是一件很有意思的事情?下面来看这样的代码:int a = 2很简单的一

2021-04-21 13:24:54 165

原创 分享 JVM 方法区的知识总结

栈、堆、方法区的交互关系运行时数据区结构图:从线程共享与否的角度来看:栈、堆、方法区的交互关系示意图:方法区的理解官文的文档解释:https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html#jvms-2.5.4《Java 虚拟机规范》中明确说明:“尽管所有的方法区在逻辑上是属于堆的一部分,但一些简单的实现可能不会选择区进行垃圾收集或者进行压缩。” 但对于 HotSpotJVM 而言,方法区还有一个别名叫做 Non-Heap

2020-08-02 23:35:05 222

原创 JVM 堆的理解

堆的核心概述一个 JVM 实例只存在一个堆内存,堆也是 java 内存管理的核心区域。Java 堆区在 JVM 启动的时候即被创建,其空间大小也就确定了。是 JVM 管理的最大的一块内存空间。《Java虚拟机规范》规定,堆可以处于物理上不连续的内存空间中,但在逻辑上它应该被视为连续的。所有的线程共享 Java 堆,在这里还可以划分线程私有的缓冲区(Thread Local Allocation Buffer, TLAB)《 Java 虚拟机规范》中对 Java 堆的描述是: 所有的对象实例以及数组

2020-08-02 00:40:45 253

原创 JVM 栈的理解

JVM 虚拟机栈栈和堆区别:栈解决的是程序的运行问题,即程序是如何执行,或者说如何处理数据。堆解决的是数据存储的问题,即数据怎么放,放在哪儿。java 的虚拟机栈是什么?Java 虚拟机栈(Java Virtual Machine Stack) ,早期也叫 Java 栈。 每个线程在创建时都会创建一个虚拟机栈,其内部保存一个个的栈帧(Stack Frame) ,对应着一次次的 Java 方法调用,是线程私有的生命周期和线程一致,主管 Java 程序的运行,它保存方法的局部变量,部分结果,并参

2020-08-02 00:34:35 677

原创 JVM 程序计数器的理解

JVM 中的程序计数寄存器(Program Counter Register) ,Register 的命名源于 CPU 的寄存器,寄存器存储指令相关的现场信息。 CPU 只有把数据装栽到寄存器才能够运行。它是唯一一个在 Java虚拟机规范中没有规定任何 OutOfMemoryError 情况的区域。两个常见问题:使用 PC 寄存器存储字节码指令地址有什么用呢?为什么使用 PC 寄存器记录当前线程的执行地址呢?因为 CPU 需要不停的切换各个线程,这时候切换回来以后,就得知道接着从哪开始继.

2020-08-02 00:29:21 424

原创 JVM 类加载器的理解

分享一些关于 Java 虚拟机的一些基础知识,这些知识也通常是大厂经常面试到的内容,java 从业者是很有必要了解 java 虚拟机,这对更好的理解 java 很有帮助,这是 java 的内功。关于java 虚拟机的学习资料推荐:宋红康老师的 B 站视频:JVM 从入门到精通学习, 关于我记录的一些学习笔记也多从该视频吸收获取,强烈推荐。《深入理解 java 虚拟机》这本书豆瓣评分 9.0 ,人气很高,很值得一看,推荐。初识 JVMjava 不一定是最好的编程语言, java 虚拟机一定是最强大的

2020-08-02 00:26:48 251

原创 效率神器 tmux ,易学易用

我以前一直喜欢使用系统平台自带的 Terminal 处理问题,因为它高效,最近迷恋上一款操作终端的软件 Tmux , 这是一个非常好用的软件,它让我可以更高效的操作终端,大大提高我的工作效率,很容易上手,如果你和我一样经常使用终端解决问题,那么 Tmux 你是很值得学习的。tmux 的安装Linux 系统中通常使用 yum 来安装 tmux :yum install tmuxMac OS 通常使用 brew 来安装 tmux :brew install tmux 你可以看到使用 tmu

2020-07-28 00:52:41 175

原创 从 0 开始学习搭建自己的网站(详细版)

本文不讲废话,咱现在就开始教你一步步搭建自己的网站,下面大家可以看一下我花费半小时搭建出来自己的博客网站 zempty 笔记 。想搭建一个自己的网站需要准备什么,需要什么技能吗?一台服务器 (阿里云,谷歌云。。。),本人使用的是谷歌云,新用户可以免费使用一年(这里有心人可以去研究一下其实可以一直使用下去,很赞)。最好准备一个域名,比如本人的域名是 zempty.sg , 域名绑定你的服务器,如果你囊中羞涩,推荐使用 freenom 一个免费的域名网站,关键还没有各种审核,几分钟以后就可以用了。

2020-07-28 00:41:12 2018 2

原创 一文了解 docker,常用 docker 命令分享

什么是 docker什么是 Docker ? 下面是我查阅的关于介绍 Docker 的几篇文章 :官方文档对 Docker 的介绍 Docker 的官方文档什么是 Docker 关于 Docker 比较详细的中文介绍知乎上关于 Docker 的介绍 如何通俗的解释 Docker 是什么 ?个人对 Docker 的一个理解:以前是一大家子过日子,资源共享,兄弟姐妹多了难免会有争执,怎么解决这个问题 ?分家过日子,相互独立,自己的生活自己过。一台服务器上跑多个应用程序,相互之间难免会有影响,

2020-07-28 00:36:59 207

原创 精通 vim 你需要知道的几个名词

前文 精通 vim , 此文就够了 ,个人感觉总结的还不错,都是大白话,很容易看懂,跟着文章走几遍,应该会有点收获吧!谢谢读者们,和大家一起进步很开心。。。学习 vim ,常学常新,使用它我们会不断的有收获。。。,评论区说:“这还差的远”,讲真 ,关于使用 vim 的技巧太多了。。。下面我们再来认识一下 vim ,理清下面的 vim 的几个名词,这样我们以后会更好的去使用和进阶vim : 缓冲区(Buffer) / 窗口 (Window ) / 标签(Tab) / 标记(Mark )/

2020-07-28 00:30:28 203

原创 详解 spring data jpa ,全方位总结,干货分享

谈一谈 jpa什么是 jpa ?jpa 的全称是 Java Persistence API , 中文的字面意思就是 java 的持久层 API , jpa 就是定义了一系列标准,让实体类和数据库中的表建立一个对应的关系,当我们在使用 java 操作实体类的时候能达到操作数据库中表的效果(不用写sql ,就可以达到效果),jpa 的实现思想即是 ORM (Object Relation Mapp...

2020-02-29 22:50:53 651

原创 远程调试 bug ,快速定位问题

情况是这样的,现在的产品出现了一个 bug ,需要及时排查快速解决,你是怎么样解决的呢?解决:登陆服务器,查看日志,看一下哪里有问题,然后本地运行程序进行debug ,解决后,在重新打包部署到服务器。现在我们开发项目,Java 项目普遍都是使用 Idea 做为主流开发工具,springboot 技术栈来快速构建项目,然后以打 jar 包的方式来部署项目。现在我们就来通过远程调试的方式来快速 d...

2020-01-02 16:58:42 606 2

原创 精通 VIM ,此文就够了

VIM 是 Linux 系统上一款文本编辑器,它是操作 Linux 的一款利器。当前有很多优秀的 IDE 都支持安装 VIM 插件,原因就是使用它便捷,高效,很爽!本文主要记录了 VIM 的一些常用使用技巧,方便随时查阅学习 。现在我们通过科学上网可以查到很多关于 VIM 的演变历史和学习资料,相当方便(做技术学习一定要会科学上网 ,现在那个*度能少用就少用吧),括号里面的内容很重要,划重点...

2019-12-25 22:46:09 623

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除