/dddplus-demo

♨️ Demonstrate how to use DDDplus to build a complex OMS.演示如何使用DDDplus实现一套订单履约中台OMS

Primary LanguageJavaApache License 2.0Apache-2.0

Demo of DDDplus

演示如何使用DDDplus实现一套订单履约中台OMS

OMS业务入门

目录

如何运行该演示

git clone https://github.com/dddplus/dddplus-demo.git
cd dddplus-demo
mvn package
java -jar order-center-cp/cp-oc-main/target/dddplus-demo.jar
#java -jar order-center-cp/cp-oc-main/target/dddplus-demo.jar 9090 plugin

# in another terminal
curl -XPOST http://localhost:9090/order             # submit an order
curl -XPOST http://localhost:9090/reload?plugin=isv # plugin hot reloading

代码快速入门

代码结构

依赖关系

订单履约中台,通过spec jar为业务前台赋能,输出中台标准,并提供扩展机制。

订单履约中台本身的个性化业务,即个性化的业务模式包。

订单履约中台的多个业务前台

KA,关键客户的个性化业务通过扩展点的实现完成。

ISV,独立软件开发商的个性化业务通过扩展点的实现完成。

Fresh,生鲜业务前台的个性化业务通过扩展点的实现完成。

这个业务BP,被中台要求不能使用Spring框架开发,不能在业务扩展包里使用AOP等Spring机制,只能严格实现中台定义的扩展点。

为了演示,ISV和KA这2个业务前台BP在开发业务扩展包时,可以使用Spring框架。

支撑域

如何快速搭建中台工程骨架

使用dddplus-archetype,可以快速搭建中台的工程骨架。

mvn archetype:generate -DarchetypeGroupId=io.github.dddplus -DarchetypeArtifactId=dddplus-archetype -DarchetypeVersion=1.0.1 -DgroupId=com.foo -DartifactId=demo -Dpackage=com.foo -Dversion=1.0.0-SNAPSHOT -DinteractiveMode=false