日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

阿里-整潔面向?qū)ο蠓謱蛹軜?gòu)COLA

 

 

COLA架構(gòu)

COLA是Clean Object-Oriented and Layered Architecture的縮寫,代表“整潔面向?qū)ο蠓謱蛹軜?gòu)”,也叫“可樂”架構(gòu)。

注意本架構(gòu)曾用名SOFA、COPA,以后統(tǒng)一使用COLA這個新名稱,帶來不便,表示抱歉

更多關(guān)于COLA架構(gòu)的信息:

  • COLA架構(gòu)的設(shè)計(jì)思想和原理:

https://blog.csdn.net/significantfrank/article/details/85785565

  • 領(lǐng)域建模的方法論:

https://blog.csdn.net/significantfrank/article/details/79614915

項(xiàng)目說明

COLA框架包括兩個Project,一個是cola-framework里面是框架的核心代碼,另一個是cola-archetype是用來生成新應(yīng)用的Maven Archetype源碼。

cola-framework Project

該P(yáng)roject包含3個Module,cola-core, cola-common, cola-test

cola-core

該Module是整個框架的核心,里面的主要功能和Package如下:

com
└── alibaba
 └── cola
 ├── assembler \提供Assembler標(biāo)準(zhǔn)
 ├── boot \這是框架的核心啟動包,負(fù)責(zé)框架組件的注冊、發(fā)現(xiàn)
 ├── command \提供Command標(biāo)準(zhǔn)
 ├── common
 ├── context \提供框架執(zhí)行所需要的上下文
 ├── convertor \提供Convertor標(biāo)準(zhǔn)
 ├── domain \提供Domain Entity標(biāo)準(zhǔn)
 ├── event
 ├── exception \提供Exception標(biāo)準(zhǔn)
 ├── extension \負(fù)責(zé)擴(kuò)展機(jī)制中的重要概念-擴(kuò)展(Extension)的定義和執(zhí)行
 ├── extensionpoint \負(fù)責(zé)擴(kuò)展機(jī)制中的重要概念-擴(kuò)展點(diǎn)(Extension Point)的定義
 ├── logger \提供DIP的日志接口
 ├── repository \提供倉儲(Repository)的標(biāo)準(zhǔn)
 ├── rule \提供業(yè)務(wù)規(guī)則或者叫策略(Rule)的標(biāo)準(zhǔn)和執(zhí)行
 │ └── ruleengine
 └── validator \提供Validator標(biāo)準(zhǔn)和執(zhí)行

cola-common

該Module提供了框架中Client Object, Entity Object和Data Object的定義,二方庫會依賴該Module。

cola-test

該Module主要是提供一些開發(fā)測試的工具,可以使用TDD來進(jìn)行開發(fā)。

cola-archetype Project

為了提升應(yīng)用創(chuàng)建的效率,以及保證架構(gòu)風(fēng)格和規(guī)范被準(zhǔn)守。我們開發(fā)了創(chuàng)建應(yīng)用的Maven Archetype,這樣只要執(zhí)行一行命令就可以生成一個基于COLA框架的應(yīng)用骨架來。

可以按照以下步驟使用COLA Archetype:

  1. 下載Archetype
  2. 安裝Archetype到本地:運(yùn)行 mvn install
  3. 生成應(yīng)用,比如,要生成一個名為demo應(yīng)用,只要執(zhí)行下面的maven 命令:
mvn archetype:generate -DgroupId=com.alibaba.sample -DartifactId=demo -Dversion=1.0.0-SNAPSHOT -Dpackage=com.alibaba.sample -DarchetypeArtifactId=cola-framework-archetype -DarchetypeGroupId=com.alibaba.cola -DarchetypeVersion=1.0.0-SNAPSHOT
  1. 啟動SpringBoot,首先在demo目錄下運(yùn)行mvn install(如果不想運(yùn)行測試,可以加上-DskipTests參數(shù))。然后進(jìn)入start目錄,執(zhí)行mvn spring-boot:run。 運(yùn)行成功的話,可以看到SpringBoot啟動成功的界面
  2. 執(zhí)行測試,生成的應(yīng)用中,已經(jīng)實(shí)現(xiàn)了一個簡單的Rest請求,可以在瀏覽器中輸入 http://localhost:8080/customer?name=World 進(jìn)行測試。
  3. 請求執(zhí)行成功的話,可以在瀏覽器中的返回值中看到:"customerName":"Hello, World"。同時(shí)觀察啟動SpringBoot的控制臺,可以看到LoggerInterceptor打印出來的日志。

查看生成的demo應(yīng)用,我們可以看到生成了5個module,分別是demo-controller、demo-client、demo-App、demo-domain、demo-infrastructure。其中demo-client是用來存放RPC調(diào)用中的DTO(Data Transfer Object)類,其它四個module分別對應(yīng)控制層、應(yīng)用層、領(lǐng)域?qū)雍突A(chǔ)實(shí)施層。

git地址:https://github.com/alibaba/COLA#cola%E6%9E%B6%E6%9E%84

分享到:
標(biāo)簽:COLA
用戶無頭像

網(wǎng)友整理

注冊時(shí)間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定