COLA架构

概述

最近接触到一个新的架构:COLA (基于扩展点+元数据+CQRS+DDD的应用架构)
COLA 是 Clean Object-Oriented and Layered Architecture的缩写,代表“整洁面向对象分层架构”。

开源地址:https://github.com/alibaba/COLA

博主 张建飞(alibaba) 博客地址:https://blog.csdn.net/significantfrank?type=lately

最新的 COLA v4 架构图

file

好的应用架构,都遵循一些共同模式,不管是六边形架构、洋葱圈架构、整洁架构、还是COLA架构,都提倡以业务为核心,解耦外部依赖,分离业务复杂度和技术复杂度等。

COLA架构区别于这些架构的地方,在于除了思想之外,还提供了可落地的工具和实践指导。

为了能够快速创建满足COLA架构的应用,COLA提供了两个archetype,位于cola-archetypes目录下:

1.cola-archetype-service:用来创建纯后端服务的archetype。
2.cola-archetype-web:用来创建adapter和后端服务一体的web应用archetype。

组件

组件名称 功能 依赖
cola-component-dto 定义了DTO格式,包括分页
cola-component-exception 定义了异常格式,主要有BizException和SysException
cola-component-statemachine 状态机组件
cola-component-domain-starter Spring托管的领域实体组件
cola-component-catchlog-starter 异常处理和日志组件 exception、dto组件
cola-component-extension-starter 扩展点组件
cola-component-test-container 测试容器组件

使用COLA

创建应用

mvn archetype:generate ^
    -DgroupId=com.alibaba.cola.demo.web ^
    -DartifactId=demo-web ^
    -Dversion=1.0.0-SNAPSHOT ^
    -Dpackage=com.alibaba.demo ^
    -DarchetypeArtifactId=cola-framework-archetype-web ^
    -DarchetypeGroupId=com.alibaba.cola ^
    -DarchetypeVersion=4.3.1

运行应用

在项目目录下运行mvn install(如果不想运行测试,可以加上-DskipTests参数)。
进入start目录,执行mvn spring-boot:run。
运行成功的话,可以看到SpringBoot启动成功的界面。
生成的应用中,已经实现了一个简单的Rest请求,可以在浏览器中输入 http://localhost:8080/helloworld 进行测试。

相关文章

转载请注明: 转载自 浮生一程
本文链接地址 COLA架构
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇