某電商項目解析

一际歼、項目簡要說明

一個項目分為多個工程,其中parent工程和common工程為其它工程的依賴姑蓝。
parent工程為聚合(pom)工程鹅心,common工程為jar工程。
聚合(pom)工程中可以有model工程纺荧,如interface旭愧、service、pojo宙暇、dao输枯,service為war包,其它為jar包占贫。
web工程為表現(xiàn)層工程桃熄,service工程為服務(wù)層工程。表現(xiàn)層工程既可以是前端頁面型奥,也可以是后臺頁面蜻拨。
web工程和聚合(pom)工程(一般不運行服務(wù)工程service)在pom文件里都要添加tomcat插件池充,每個工程的端口號不同螺捐,默認(rèn)是8080.

二晓锻、服務(wù)層與表現(xiàn)層

service工程即為服務(wù)層、web工程即為表現(xiàn)層布卡。
service工程實現(xiàn)interface工程中的xxx接口血崭,并且使用dubbo暴露出去卧惜,web工程使用dubbo引用后,就可以直接調(diào)用xxx接口中定義的抽象方法夹纫,無需再實現(xiàn)咽瓷,實現(xiàn)的具體細(xì)節(jié)由service執(zhí)行。

2.1舰讹、service工程如下
目錄結(jié)構(gòu)

src
|--main
   |--java
      |--com.taotao.jedis(redis集群版與單機版的實現(xiàn))
      |--com.taotao.xxx.service.impl(實現(xiàn)interface工程中的接口)
   |--resources
      |--mybatis(SqlMapConfig.xml茅姜,設(shè)置數(shù)據(jù)類型和分頁插件)
      |--properties(dp.porperties、resource.properties)
      |--spring(下面單獨說明)
   |--webapp
      |--WEB-INF(web.xml月匣,初始化spring容器和上下文監(jiān)聽)
|--test
pom.xml(各種依賴)

service工程中的spring一般都有dao.xml钻洒、trans.xml,命名可加前綴applicationContext锄开。

manager-service:activemq.xml素标、dao.xml、redis.xml萍悴、service.xml头遭、trans.xml.

search-service:activemq.xml、dao.xml癣诱、service.xml计维、solr.xml.

content-service:dao.xml、reids.xml撕予、service.xml鲫惶、trans.xml.

sso-service:dao.xml、reids.xml嗅蔬、service.xml、trans.xml.

order-service:dao.xml疾就、redis.xml澜术、service.xml、trans.xml.

dao.xml主要作用有:

1猬腰、加載屬性文件
2鸟废、配置數(shù)據(jù)庫連接池(Druid)
3、配置SqlSessionFactory(引用2中的連接池姑荷、加載SqlMapConfig.xml)
4盒延、配置mapper映射文件掃描器(mapper統(tǒng)一放在manager-dao中)

redis.xml主要作用有:

1缩擂、配置上下文注解
2、配置單機版或者集群版
2.1單機版配置對應(yīng)的JedisPool文件添寺,服務(wù)層所有服務(wù)的host和port 參數(shù)相同且只有一個胯盯。再配置對應(yīng)的com.taotao.jedis.JedisClientPool。
2.2集群版配置對應(yīng)的JedisCluster文件计露,所有服務(wù)的配置相同博脑,但在每一個服務(wù)中有多個參數(shù)不同的host和port。再配置對應(yīng)的com.taotao.jedis.JedisClientCluster票罐。

service.xml主要作用有:

1叉趣、配置掃描@service注解的類
2、發(fā)布服務(wù)该押,詳情參考 http://www.reibang.com/p/7b091aac00a3

trans.xml主要作用有:

1疗杉、配置事務(wù)管理器(引用dao.xml中的連接池)
2、配置通知蚕礼,通知所有數(shù)據(jù)庫操作
3烟具、配置aop,引用2中的通知

activemq.xml主要作用有:

1闻牡、配置JMS服務(wù)廠商提供的ConnectionFactory
2净赴、封裝spring對象ConnectionFactory
3、配置JMSTemplate
4罩润、配置消息的Destination對象玖翅,有兩種方式:ActiveMQQueue、ActiveMQTopic
5割以、 配置消息的接收者

solr.xml主要作用有:

1金度、配置單機版或者集群版solr
1.1單機版配置HttpSolrServer文件,參數(shù)值為一個host和一個port严沥。
1.2集群版配置文件CloudSolrServer文件猜极,參數(shù)值為一個host和多個port。

2.2消玄、web工程如下
目錄結(jié)構(gòu)

src
|--main
   |--java
      |--com.taotao.xxx.controller(服務(wù)層與前端的中間控制器)
      |--com.taotao.xxx.pojo 或者interceptor跟伏、utils、listener翩瓜、exception
   |--resources
      |--properties(resource.properties受扳、client.conf)
      |--springmvc.xml 或者springmvc-activemq.xml
   |--webapp
      |--WEB-INF(web.xml,初始化spring容器和上下文監(jiān)聽)
|--test
pom.xml(各種依賴)

web工程中的spring都有springmvc.xml兔跌。主要作用有:

1勘高、加載屬性文件
2、配置注解驅(qū)動
3、配置視圖解析器
4华望、配置掃描@Controller注解的類
5蕊蝗、引用dubbo服務(wù)
6、配置資源映射(css赖舟、js)
7蓬戚、配置文件上傳解析器(比如manager后臺管理需要上傳圖片文件)
8、配置攔截器(比如訂單系統(tǒng)需要攔截登陸)
9建蹄、配置全局異常處理器(比如在search工程中)

有些需要做靜態(tài)網(wǎng)頁碌更,比如item頁,就會多個freemarker的配置洞慎。
有些web工程還做消息隊列痛单,那么在spring中會加個springmvc-activemq.xml,比如在item工程中劲腿。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末旭绒,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子焦人,更是在濱河造成了極大的恐慌挥吵,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件花椭,死亡現(xiàn)場離奇詭異忽匈,居然都是意外死亡,警方通過查閱死者的電腦和手機矿辽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進(jìn)店門丹允,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人袋倔,你說我怎么就攤上這事雕蔽。” “怎么了宾娜?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵批狐,是天一觀的道長。 經(jīng)常有香客問我前塔,道長嚣艇,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任华弓,我火速辦了婚禮食零,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘该抒。我一直安慰自己慌洪,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布凑保。 她就那樣靜靜地躺著冈爹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪欧引。 梳的紋絲不亂的頭發(fā)上频伤,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天,我揣著相機與錄音芝此,去河邊找鬼憋肖。 笑死,一個胖子當(dāng)著我的面吹牛婚苹,可吹牛的內(nèi)容都是我干的岸更。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼膊升,長吁一口氣:“原來是場噩夢啊……” “哼怎炊!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起廓译,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤评肆,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后非区,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瓜挽,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年征绸,在試婚紗的時候發(fā)現(xiàn)自己被綠了久橙。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡歹垫,死狀恐怖剥汤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情排惨,我是刑警寧澤吭敢,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站暮芭,受9級特大地震影響鹿驼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜辕宏,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一畜晰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧瑞筐,春花似錦凄鼻、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽闰非。三九已至,卻和暖如春峭范,著一層夾襖步出監(jiān)牢的瞬間财松,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工纱控, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留辆毡,地道東北人。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓甜害,卻偏偏與公主長得像舶掖,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子尔店,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理访锻,服務(wù)發(fā)現(xiàn),斷路器闹获,智...
    卡卡羅2017閱讀 134,660評論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,822評論 6 342
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,167評論 25 707
  • Spring boot hibernate grunt
    查蘇的吉古勒閱讀 170評論 0 0
  • 當(dāng)今社會期犬,最入世的就是流量明星、投資人和熱衷做生意的潮汕人避诽。 我們當(dāng)中龟虎,有很多人不屑于入世,不屑于表達(dá)自己的權(quán)益沙庐,...
    新一代的覺醒閱讀 617評論 0 0