自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 if-else代码优化的八种方案

代码中如果if-else比较多,阅读起来比较困难,维护起来也比较困难,很容易出bug,接下来,本文将介绍优化if-else代码的八种方案。

2023-07-11 09:01:36 246 1

原创 对象映射神器Mapstruct,高效开发

source:源数据,在上述例子中代表 Dog 指需要被映射的数据target:目标值,在上述例子中代表 Animal 指映射成的数据constant:常量值,如果在映射时目标值多于源数据 那么就可以使用这个代指:默认值,转换当源属性为null的时候,我们用defaultValue来指定默认值ignore:忽略转换的值expression:需要写一些表达式,如stream,optional,xxxUtil。但前提是需要在 Mapper中imports。

2023-07-11 08:54:49 238 1

原创 彻底搞懂Optional,从此告别空指针

Optional是 Java 语言的有益补充 —— 它旨在减少代码中的,虽然还不能完全消除这些异常。它也是精心设计,自然融入 Java 8 函数式支持的功能。总的来说,这个简单而强大的类有助于创建简单、可读性更强、比对应程序错误更少的程序。注意:Option类是判断空指针异常时用的,对于其他的if…else只要不是判断空指针的问题,就不要使用Option类,不要陷入一个误区,以为学了Option类,看见if…else就往Option来想,这么做真是大作特错。

2023-07-03 09:09:28 114 1

原创 保姆级教学,让你一秒学会分布式锁

CAS算法:CAS,即Compare And Swap,意思是:比较并替换。CAS算法需要3个操作数:内存地址V,旧预期值A,将要更新的目标值B。CAS指令执行时,当且仅当内存地址V的值与预期值A相等时,将内存地址V的值修改为B,否则就什么都不做。整个比较并替换的操作是一个原子操作。CAS是乐观锁技术,当多个线程尝试使用CAS同时更新同一个变量时,只有其中一个线程能更新变量的值,而其它线程都失败,失败的线程并不会被挂起,而是被告知这次竞争中失败,并可以再次尝试。

2023-06-30 09:57:30 107

空空如也

空空如也

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

TA关注的人

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