最近在阅读框架源代码时,常常看到 SPI 的子包, 忍不住查了下: Service Provider Interface : 服务提供接口。 JavaSPI 实际上是“基于接口的编程+ ...
最近在阅读框架源代码时,常常看到 SPI 的子包, 忍不住查了下: Service Provider Interface : 服务提供接口。 JavaSPI 实际上是“基于接口的编程+ ...
背景 实际开发中,常常需要将比较复杂的 JSON 字符串转换为对应的 Java 对象。这里记录下解决方案。 如下所示,是入侵事件检测得到的 JSON 串: 方法 预备工作 把上述 j ...
引语### 作为工程师,不能仅仅满足于实现了现有的功能逻辑,还必须深入认识系统。一次请求,流经了哪些方法,执行了多少次DB操作,访问了多少次文件操作,调用多少次API操作,总共有多少次IO操作,多少 ...
引子 在涉及前后端交互的 Java 应用中,SpringMVC 可以说是很流行的一种框架。那么在 SpringMVC 中,如何将较复杂的嵌套对象从前端传给后端呢?可以使用注解 @RequestBod ...
摘要:通过一次并发处理数据集的Java代码重构之旅,展示函数式编程如何使得代码更加精练。 难度:中级 基础知识### 在开始之前,了解“高阶函数”和“泛型”这两个概念是必要的。 高阶函数就是 ...
背景与目标### 在使用函数接口和枚举实现配置式编程(Java与Scala实现),使用了函数接口和枚举实现了配置式编程。读者可先阅读此文,再来阅读本文。 有时,需要将一些业务逻辑,使用配置化的方式 ...
引子 Kafka 是一个高性能、高可用、高可靠的支持事件数据流的消息队列系统,是实时计算的可靠数据源。 本文给出使用 Kafka 的基本示例。关于 Kafka 的更多原理性的信息,可阅读《Kafk ...
摘要:使用Scala语言为例,展示函数式编程消除重复无聊的foreach代码。 难度:中级 概述### 大多数开发者在开发生涯里,会面对大量业务代码。而这些业务代码中,会发现有大量重复无聊的 ...
引子## 将行为作为数据传递### 怎样在一行代码里同时计算一个列表的和、最大值、最小值、平均值、元素个数、奇偶分组、指数、排序呢? 答案是思维反转!将行为作为数据传递。 文艺青年的代码如下所示 ...
本文实现的方法可以边异步加载数据边绘制拓扑图。 有若干点需要说明一下: 1. 一次性获取所有数据并绘制拓扑图, 请参见文章: <使用 JsPlumb 绘 ...