【架构设计】阿里开源架构Cola4.0的项目实践:订单系统

这篇具有很好参考价值的文章主要介绍了【架构设计】阿里开源架构Cola4.0的项目实践:订单系统。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目介绍

使用SpringBoot+MybaitsPlus+Cola(整洁面向对象分层架构)4.0重构订单功能

项目地址

Gitee:https://gitee.com/charles_ruan/smile-cola

Github:https://github.com/charles0719/smile-cola

项目核心API

  • 新增

POST http://localhost:8080/order/add

{
    "orderInfo": "订单1号1112",
    "orderNo": "111211",
    "description": "我是一个订单"
}
  • 修改

POST http://localhost:8080/order/edit

{
    "id": "1",
    "orderInfo": "订单1号1112",
    "orderNo": "111211",
    "description": "我是一个订单"
}
  • 访问详情

GET http://localhost:8080/order/1

  • 分页查询

POST http://localhost:8080/order/page

{
    "pageSize": 10,
    "pageIndex": 1
}

Cola架构介绍

核心组件

阿里cola,开源项目介绍,spring boot,开源,架构

交互过程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UEXDAnov-1684299282884)(assets/README/cola-交互.png)]

COLA 规范

规范 用途 解释
xxxCO Client Object 客户对象,用于传输数据,等同于DTO
xxxCmd Client Request Cmd代表Command,表示一个写请求
xxxQuery Client Request Query,表示一个读请求
xxxCmdExe Command Executor 命令模式,每一个写请求对应一个执行器
xxxQueryExe Query Executor 命令模式,每一个读请求对应一个执行器
xxxVO Value Object 值对象
xxxEntity Entity 领域实体
xxxDO Data Object 数据对象,用于持久化
xxxInterceptor Command Interceptor 拦截器,用于处理切面逻辑
IxxxService API Service xxxServiceI 不太习惯,就把 I 放在前边吧
xxxDomainService Domain Service 需要多个领域对象协作时,使用DomainService
xxxValidator Validator 校验器,用于校验的类
xxxAssembler Assembler 组装器,DTO <—> Entity,用于Application层
xxxConvertor Convertor 转化器,Entity <—> DO,用于Infrastructure层

模块规范

阿里cola,开源项目介绍,spring boot,开源,架构

阿里cola,开源项目介绍,spring boot,开源,架构

阿里cola,开源项目介绍,spring boot,开源,架构

使用COLA

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

安装 cola archetype
下载cola-archetypes下的源码到本地,然后本地运行mvn install安装。

安装 cola components
下载cola-components下的源码到本地,然后本地运行mvn install安装。

创建应用

mvn archetype:generate  -DgroupId=com.charles -DartifactId=smile -Dversion=1.0.0-SNAPSHOT -Dpackage=com.charles.smile -DarchetypeArtifactId=cola-framework-archetype-web -DarchetypeGroupId=com.alibaba.cola -DarchetypeVersion=4.0.0 -DarchetypeCatalog=internal

阿里cola,开源项目介绍,spring boot,开源,架构

参考

  • https://github.com/alibaba/COLA
  • https://github.com/AmosWang0626/think-cola
  • https://gitee.com/j3code/lucky-draw-v1
  • 复杂度应对之道 - COLA应用架构
  • COLA 4.0:应用架构的最佳实践

阿里cola,开源项目介绍,spring boot,开源,架构文章来源地址https://www.toymoban.com/news/detail-634125.html

到了这里,关于【架构设计】阿里开源架构Cola4.0的项目实践:订单系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 新零售SaaS架构:订单履约系统的概念模型设计

      订单:客户提交购物请求后,生成的买卖合同,通常包含客户信息、下单日期、所购买的商品或服务明细、价格、数量、收货地址以及支付方式等详细信息。 子订单:为了更高效地进行履约,大订单可能会被拆分成多个子订单,子订单会根据商品类型、配送地址、仓库位置

    2024年03月09日
    浏览(43)
  • 关于COLA架构的讨论

    概念网上可以搜到很多,大体分为: adapter client app infra domain 这五层。 图例这里有,就不贴了。 adapter和app相当于spring里的controller+service,domain是领域模型层,infra相当于domain的实现层(比如dao或rpc访问)。唯独client,有点疑问,目前我在实践中是把client作为app的对外接口层

    2024年02月16日
    浏览(27)
  • 开源项目 | 可二次开发的开源后台、支持支付系统通用的支付、对账、清算、账户管理、支付订单管理等功能

    在RuoYi项目基础上改造,通过多模块的方式整合其他经常被用到的功能模块,特别感谢RuoYi。基于SpringBoot2.0的开发的系统 易读易懂、界面简洁美观。具备支付系统通用的支付、对账、清算、账户管理、支付订单管理等功能;目前已接通微信支付渠道,应用微信公众号商城 在此

    2024年01月21日
    浏览(51)
  • 【ArchSummit】阿里云原生微服务架构治理最佳实践

      前言 📫 作者简介 :小明java问道之路,专注于研究 Java/ Liunx内核/ C++及汇编/计算机底层原理/源码,就职于大型金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的架构设计与演进、系统优化与稳定性建设。 📫 热衷分享,喜欢原创~ 关注我会给你带来一些

    2024年02月02日
    浏览(64)
  • 阿里云云通信风控系统的架构与实践

    作者:铭杰 阿里云云通信创立于 2017 年,历经 5 年发展已经孵化出智能消息、智能语音、隐私号、号码百科等多个热门产品。目前,已成为了国内云通信市场的领头羊,在国际市场上服务范围也覆盖了 200 多个国家。随着业务的不断壮大,云通信面临的安全风险也越来越严峻

    2024年02月02日
    浏览(30)
  • 一些实用Android的开源库,阿里架构师经验分享

    试想这么一个场景,在 A 页面打开 B 页面,然后 B 页面打开了 C 页面,C 页面又打开了 D 页面,而且还需要传递参数,在 D 页面修改了一些信息,然后这些信息更新之后,A、B、C 页面很可能都需要对应的进行数据更新,碰到这种需求该怎么处理? 有人说用 startActivityForResult

    2024年04月10日
    浏览(52)
  • Llama2开源大模型的新篇章以及在阿里云的实践

    Llama一直被誉为AI社区中最强大的开源大模型。然而,由于开源协议的限制,它一直不能被免费用于商业用途。然而,这一切在7月19日发生了改变,当Meta终于发布了大家期待已久的免费商用版本Llama2。Llama2是一个由Meta AI开发的预训练大语言模型,它可以接受任何自然语言文本

    2024年02月16日
    浏览(31)
  • Chat2DB:阿里巴巴开源的聊天数据管理工具--实践

    Chat2DB:阿里巴巴开源的聊天数据管理工具–实践 简介 ​ Chat2DB 是一款有开源免费的多数据库客户端工具,支持windows、mac本地安装,也支持服务器端部署,web网页访问。和传统的数据库客户端软件Navicat、DBeaver 相比Chat2DB集成了AIGC的能力,能够将自然语言转换为SQL,也可以将

    2024年02月09日
    浏览(42)
  • 【大模型知识库】(1):系统架构设计思考/调研。开源项目llm-knowledge-system,部署mysql,seilisearch,milvus,fastchat的ChatGLM3,BGE-zh

    https://www.bilibili.com/video/BV1N94y1n7UF/ 【大模型知识库】(1):设计开源项目,docker部署mysql,seilisearch,milvus,fastchat的ChatGLM3,BGE-zh模型 项目名称 llm-knowledge-system 大模型知识库系统 项目代码在,逐步开发设计中。 https://gitee.com/fly-llm/llm-knowledge-system 开发语言使用golang进行开发

    2024年02月02日
    浏览(38)
  • 云架构及设计-阿里云

    云架构是指在云计算环境下的架构设计。与传统架构不同,云架构需要考虑云服务的可用性、可伸缩性、安全性和成本效益。 首先,云架构需要考虑可用性。这意味着系统必须能够在网络、硬件或其他故障发生时继续运行,保证用户对系统的访问。 其次,云架构需要考虑可

    2024年02月02日
    浏览(24)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包