自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mybatis自定义sql insert报错:selectKey不起作用、以及报错找不到getter方法

1)如果要使用selectKey提前自动生成字段ID,就在mapper interface方法定义中,如果使用@param。就需要在使用insert语句中,通过@param指定的名称来方位bean的属性;如果不使用@param就可以省去名称。2)使用selectKey获取多列数据时,千万不要在keyProperty中的列之间加空格(一般处于编码习惯,都会自然而然的加一个空格)。就这个例子来说,不使用@param会更简洁。然后代码就能够正常运行了。

2024-01-26 10:13:08 401 1

原创 DDD 实战 (12- 终篇):DDD 下微服务的“分分合合”及一个倡议

在前面的《DDD 实战 (6):战略设计之技术决策》中,我曾经提到“微服务随时可拆可分”。而在上篇《DDD 实战(11):冲刺 1 代码 TDD 实现之道》几乎展示了所有 DDD 相关的、基于 TDD 代码“三部曲”的编程方式之后,就只上下这一个问题没有从代码角度进行演示了。本篇就来演示“微服务的随时可拆可分”这一 DDD 编程特性。同时,这将是本系列的最后一篇文章。

2022-08-25 17:18:03 814 1

原创 DDD 实战 (11):冲刺 1 代码 TDD 实现之道

接上篇《DDD 实战 (10):冲刺 1 战术之服务设计(下)及技术决策》后,我们接下来的重点,就是要展示真正的代码实现了。在本篇中,我将围绕 TDD(Test-driven development, 测试驱动开发)编程方法为核心,演示前面完成的相关 DDD 设计是如何落地的。 在本篇中,我将首先介绍 TDD 三重奏(写测试-写功能-重构)和相关原则,然后用实际代码演示 TDD 的工作流程,最后我会讲到编程过程中采用哪些技巧处理一些现实的技术细节问题。

2022-08-25 17:01:44 779

原创 DDD 实战 (10):冲刺 1 战术之服务设计(下)及技术决策

接上篇《DDD 实战 (9):冲刺 1 战术之服务设计》完成了“群买菜”系统 sprint1 服务设计的主要篇幅之后,本篇完成 sprint1 剩下的服务设计(主要是商品上下文),以及战术设计中需要进行的技术决策(这个只有第一次冲刺才需要)。

2022-08-25 16:54:52 717

原创 DDD 实战 (9):冲刺 1 战术之服务设计(上)

接上篇《DDD 实战 (8):冲刺 1 战术之聚合设计》完成了“群买菜”系统战术设计的所有聚合设计之后,本篇将完成 sprint1 服务设计的主要部分(鉴权上下文、订单上下文)。

2022-08-25 16:46:35 578

原创 DDD 实战 (8):冲刺 1 战术之聚合设计

本篇开始我们对“群买菜”首个冲刺的战术设计进行描述。上篇《DDD 实战 (7):战术设计、整体流程与首次冲刺》中,我们已经识别了首个冲刺的 14 个业务用例和 23 个服务契约的识别,并分别给出了相应的业务用例规约和服务契约设计。下面我们分两篇来分别完成:1)按照 14 个业务用例规约完成聚合设计;2)按照 23 个服务契约,在聚合设计的基础上,完成服务设计(含应用服务、领域服务);3)作为首个冲刺,完成必要的战术层面相关技术决策(这一步工作一般只在首个冲刺的时候会做,后面的冲刺可能会有补充完善)。

2022-08-24 22:58:21 582

原创 DDD 实战 (7):战术设计、整体流程与首次冲刺

上篇《DDD 实战 (6):战略设计之技术决策》已经完成了“群买菜”的全局性(“全局性”的意思,是说整个系统只会有一次)战略设计。从本篇开始,我们就要进入实质性的系统实现过程了。这主要包括战术设计和代码实现。

2022-08-24 22:50:46 684

原创 DDD 实战 (6):战略设计之技术决策

篇《DDD 实战 (5):战略设计之上下文映射和系统分层架构》完成了“限界上下文识别”和“限界上下文关系映射”这两个 DDD 战略设计阶段最重要的工作,甚至给出了代码目录结构,我们在 DDD 战略设计阶段就剩下最后一个内容:战略层面的技术决策。本篇就是要完成这部分内容。

2022-08-24 22:47:09 525

原创 DDD 实战 (5):战略设计之上下文映射和系统分层架构

在上篇《DDD 实战 (4):战略设计之系统上下文和限界上下文》完成了限界上下文的识别(也就是系统“最粗粒度”的模块划分)后,我们需要对这些上下文之间的协作关系进行分析——即“限界上下文关系映射”。也只有在完成上下文关系映射后,我们才能真正的判定自己所做出的“限界上下文识别”是否真的达到了自己想要的“低耦合、高内聚”的目标。因为,通过“限界上下文映射”我们就能够看到:1)这些上下文之间有哪些协作关系?2)这些关系是强关联还是弱关联?

2022-08-24 22:39:45 828

原创 DDD实战(4):战略设计之系统上下文和限界上下文

到上篇《DDD 实战 (3):整体工作框架和全局需求分析》为止,我们已经完成了“群买菜”在“问题空间”的全局分析,本节开始进入“解空间”映射。我将用两节的篇幅来讲解“群买菜”的战略设计。首先,对战略设计的理论知识做一个浓缩性介绍;其次,分三节介绍“群买菜”的 DDD 战略设计,包括:本节介绍系统上下文定义、限界上下文识别;下节介绍“群买菜”限界上下文映射、系统分层架构;最后一节介绍群买菜“战略层技术决策”。

2022-08-24 22:29:22 1847

原创 DDD 实战 (3):整体工作框架和全局需求分析

DDD 本质上是个“软件设计”方法论,它指导的是“怎么做软件设计”。故在正式开始“群买菜”的软件设计之前,我们先对 DDD 整体方法论做一个简单的、从我个人角度理解的介绍。

2022-03-11 22:33:13 4844 3

原创 DDD实战(2):看看代码结构长啥样

真正开始 DDD 旅程前,我想让您看到经过 DDD 设计之后的代码长啥样。我想,这是所有本着“talking is easy, show me your code”理念的程序员都比较在乎的观念。

2022-03-01 22:18:26 718

原创 DDD实战(1):从需求到代码实现生鲜电商系统

通过本专题的旅程,您将能够理解 DDD 从需求分析、到架构设计、到编码实现的整个过程,以及其中的工作方法和实用技巧。

2022-02-24 12:30:46 1377 1

空空如也

空空如也

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

TA关注的人

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