淺談JaveWeb項目分層設計

在搭建JaveWeb項目架構中,咱們通常會分層設計,便於後期的維護,開發人員能夠分模塊去開發,提升總體團隊的開發效率。層次按職責分通常分四層:表現層(SpringMVC)、持久層(mybatis)、業務層(service)和域模型層(SDK)。每個層都有各自的職責,應該隔離開來。redis

表現層:咱們能夠選用技術SpringMVC,固然還能夠選用Struts,該層主要根據用戶的請求,響應跳轉到不一樣的UI界面展示。spring

持久層:咱們可選用技術mybatis或者hibernate,該層主要是針對數據庫操做,好比:鏈接數據庫、操做數據庫(簡單的增刪改查)。數據庫

業務層:service主要是具體業務代碼的實現,會調用dao層的接口,咱們這裏把dao層稱爲SDK層。緩存

域模型層:SDK主要特指軟件關注的領域 ,會設計出不少實體對象和接口。mybatis

四層的項目結構以下:

project-parent架構

            |----pom.xmlmvc

            |----project-mybatis框架

                            |----pom.xmlmaven

            |----project-SDK分佈式

                            |----pom.xml

            |----project-service

                            |----pom.xml

            |----project-springmvc

                            |---pom.xml

若考慮到業務須要設計到分佈式和大數據。咱們能夠在這基本四層上進行擴展,好比下面的架構體系

用到Dubbo的分佈式服務框架,storm+kafka實時處理消息隊列,redis去作高速緩存。

擴展項目結構以下:

project-parent

            |----pom.xml

            |----project-core

                            |----pom.xml

            |----project-msgConsumer

                            |----pom.xml

            |----project-msgProducer

                            |----pom.xml

            |----project-mybatis

                            |----pom.xml

            |----project-page

                            |----pom.xml

            |----project-SDK

                            |----pom.xml

            |----project-service

                            |----pom.xml

            |----project-SpringMVC

                            |---pom.xml

            |----project-storm

                            |----pom.xml

接下來博客中會介紹用maven去構建多模塊項目。

相關文章
相關標籤/搜索