摘要: Stream API Stream API通过Lambda表达式对集合进行各种非常便利高效的聚合操作,或者大批量数据操作 优化遍历 Stream操作分类 无状态操作:元素的处理不受之前元素的影响 有状态操作:该操作只有拿到所有元素之后才能继续下去 短路操作:遇到某些符合条件的元素就可以得到最终结果 阅读全文
posted @ 2019-09-27 19:47 Java架构Monster 阅读(3445) 评论(0) 推荐(0) 编辑
摘要: 元字符 正则表达式引擎 程序对正则表达式进行语法分析,建立语法分析树 再根据语法分析树结合正则表达式引擎生成执行程序(状态机),用于字符匹配 正则表达式引擎是一套核心算法,用于建立状态机 小结 正则表达式 => 语法分析树 语法分析树 + 正则表达引擎 => 状态机 => 用于字符匹配 DFA自动机 阅读全文
posted @ 2019-09-26 16:13 Java架构Monster 阅读(4780) 评论(0) 推荐(0) 编辑
摘要: 序列化方案 Java序列化 原理 Serializable transient serialVersionUID writeObject/readObject 具体实现序列化和反序列化的是writeObject和readObject writeReplace/readResolve 缺陷 无法跨语言 阅读全文
posted @ 2019-09-25 17:46 Java架构Monster 阅读(1137) 评论(0) 推荐(0) 编辑
摘要: 前言: 原作:孤独烟。因修改不当之处欢迎指出! 大家好,我是小架架。 今天一大早就起来水文章了。这篇文章我个人感觉虽然含金量不是特别大,估计大家大概5分钟左右就能看完!到底是因为什么呢,因为平时干货文章分享得有点多,今天的话就一顿截图写几个命令就搞定了,所以含金量不高。 然后,我们来看一下近期有一段 阅读全文
posted @ 2019-09-25 14:03 Java架构Monster 阅读(9982) 评论(0) 推荐(1) 编辑
摘要: 服务框架的核心 远程通信提供了服务之间通信的桥梁,服务治理提供了服务的后勤保障 在满足一定的服务治理需求的前提下,对远程通信的性能需求是技术选型的主要影响因素 在没有进行组件扩展的前提下,Spring Cloud是基于Feign组件实现RPC通信(基于HTTP+JSON序列化) Dubbo是基于SP 阅读全文
posted @ 2019-09-24 19:12 Java架构Monster 阅读(1621) 评论(0) 推荐(0) 编辑
摘要: JDBC异常抽象 Spring会将数据操作的异常转换为DataAccessException 解析错误码 org/springframework/jdbc/support/sql-error-codes.xml classpath下的sql-error-codes.xml(定制) org/sprin 阅读全文
posted @ 2019-09-24 19:10 Java架构Monster 阅读(1805) 评论(0) 推荐(0) 编辑
摘要: synchronized / Lock 1.JDK 1.5之前,Java通过synchronized关键字来实现锁功能 synchronized是JVM实现的内置锁,锁的获取和释放都是由JVM隐式实现的 2.JDK 1.5,并发包中新增了Lock接口来实现锁功能 提供了与synchronized类似 阅读全文
posted @ 2019-09-21 15:47 Java架构Monster 阅读(5479) 评论(2) 推荐(5) 编辑
摘要: 前言: 在程序中遇到多分支选择的时候,想必大家都喜欢用if...else if...else...语句,尤其是初学者,因为在了解switch语句之前,我也是只会用if...else语句。那么现在看完这篇随笔的介绍后,你们又有了另外一种选择,使用switch语句可以增强代码的可能性,当然switch也 阅读全文
posted @ 2019-09-20 19:15 Java架构Monster 阅读(827) 评论(0) 推荐(0) 编辑
摘要: 前言: 最近的时候遇到一个需求,就是当服务器接到请求并不需要任务执行完成才返回结果,可以立即返回结果,让任务异步的去执行。开始考虑是直接启一个新的线程去执行任务或者把任务提交到一个线程池去执行,这两种方法都是可以的。但是Spring 这么强大,肯定有什么更简单的方法,就 google 了一下,还真有 阅读全文
posted @ 2019-09-20 19:11 Java架构Monster 阅读(8928) 评论(0) 推荐(0) 编辑
摘要: Lock / synchronized Lock锁的基本操作是通过乐观锁实现的,由于Lock锁也会在阻塞时被挂起,依然属于悲观锁 synchronizedLock 实现方式 JVM层实现 Java底层代码实现 锁的获取 JVM隐式获取 lock() / tryLock() / tryLock(tim 阅读全文
posted @ 2019-09-17 15:33 Java架构Monster 阅读(457) 评论(0) 推荐(0) 编辑