摘要:
isEmpty 系列 StringUtils.isEmpty() 是否为空. 可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 isEmpty(" ")=false StringUtils.isEmpty(null) = true StringUtils.isEmp 阅读全文
posted @ 2022-06-22 15:12 揽星河、入梦 阅读(43) 评论(0) 推荐(0)
|
摘要:
isEmpty 系列 StringUtils.isEmpty() 是否为空. 可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 isEmpty(" ")=false StringUtils.isEmpty(null) = true StringUtils.isEmp 阅读全文
posted @ 2022-06-22 15:12 揽星河、入梦 阅读(43) 评论(0) 推荐(0)
摘要:
1. 无状态 我们都知道只有多个线程访问公共资源的时候,才可能出现数据安全问题,那么如果我们没有公共资源,是不是就没有这个问题呢? 例如: public class NoStatusService { public void add(String status) { System.out.print 阅读全文
posted @ 2022-06-22 11:27 揽星河、入梦 阅读(50) 评论(0) 推荐(0)
摘要:
mysql内部逻辑图 连接器 主要负责跟客户端建立连接、获取权限、维持和管理连接 查询缓存 优先在缓存中进行查询,如果查到了则直接返回,如果缓存中查询不到,在去数据库中查询。 MySQL缓存是默认关闭的,也就是说不推荐使用缓存,并且在MySQL8.0 版本已经将查询缓存的整块功能删掉了。这主要是它的 阅读全文
posted @ 2022-06-21 16:08 揽星河、入梦 阅读(74) 评论(0) 推荐(0)
摘要:
前言 UUID 是软件开发中最常用的通用标识符之一。然而,在过去的几年里,其他的竞品挑战了它的存在。 其中,NanoID 是 UUID 的主要竞争对手之一。 因此,在本文中,我们将展开讨论 NanoID 的功能、它的亮点以及它的局限性,以便让我们更好地了解何时使用它。 了解 NanoID 及其用法 阅读全文
posted @ 2022-06-21 09:13 揽星河、入梦 阅读(249) 评论(0) 推荐(0)
摘要:
整体流程图如下 步骤如下: 获取需要进行批量更新的大集合 A,对大集合进行拆分操作,分成 N 个小集合 A-1 ~ A-N 。 开启线程池,针对集合的大小进行调参,对小集合进行批量更新操作。 对流程进行控制,控制线程执行顺序。 按照指定大小拆分集合的工具类 /** * 拆分结合工具类 * * @au 阅读全文
posted @ 2022-06-21 08:33 揽星河、入梦 阅读(605) 评论(0) 推荐(0) |
||