bluepenguin設計方案

一.      項目目的 java

   組合經常使用開發框架,擯棄這些框架中重量級的功能,簡化框架配置。造成一套可以高效開發出優質系統的組合框架。 web

二.項目組件 spring

JDK1.6,json

開源框架: EXT3.0  SPRING2.5  Log4j緩存

自定義框架:PJDBC1.0 服務器

三.    項目特點 session

1.能作到servlet全透明,看不到httpsessionrequestresponse……。架構

2.可擴充fiter,針對特定 控制層、業務層 實現不一樣的過濾方案。app

3.1app1page,一個應用一個頁面。框架

4.先後臺默認映射,大大提升開發效率

四.  設計方案 

1.       系統架構

   

 2.         先後臺交互方案

 <[if gte vml 1]> <[endif]>

Ext   ----(全部數據封裝成json)---> 字符集fiter --à Json轉化器(json Json.java的轉化) -à是否登陸fiter  ----->    日誌fiter(誰什麼時間訪問什麼模塊) -----à   控制轉發器(截取url經過spring上下文獲取Action) -à  Action (繼承BasicAction,負責將json類型轉化成BO,業務類之間的協調) ---àServie(全事務)---à(無方言簡單操做JDBC接口、其餘操做hibernateibatis接口)---à異常fiter(全部異常轉化成MessageException拋出,message屬性爲空爲「系統未知錯誤」)---àExt

    

 

 

 

Ext提交

url:/example/ext1.json  參數 method:方法名

字符集

字符集

Json轉化器

轉化器類型。默認爲 Json

日誌fiter

須要作日誌的模塊 列表

轉發器

更具 url 截取 最後的/與?之間的字符,若是有.,再取.前的字符放到。再由spring來控制轉發。

BasicAction

<[if !supportLists]>1.       <[endif]>提供個性過濾器定製

<[if !supportLists]>2.       <[endif]>requestreponse……做爲內部變量封裝

JDBC

實現JDBC方案的最優化,仿照hibernate緩存

異常

服務器全部任務處理完畢後

Ext

Over

 

 

3.          字段映射

1.默認方案

規範:web頁面字段 ==  bo  == 持久層字段名

好處:能夠實現0配置。

壞處:必須嚴格控制界面字段與BO與持久層字段名一致

(極限狀況:web頁面字段 ==  hashmap  == 持久層字段名

      好處:用hashmap替代BO,只保證持久層以界面字段名一致

      壞處:去掉BO業務實體不明顯

2.定製方案

   自定義各層間字段名轉化規範。

   好處:容易擴展

壞處:容易出錯

      項目先實現一種,留有接口給後來人實現。

      hashmap保存字段間的映射關係。

3.配置方案

   xml肯定web頁面字段bo與持久層的映射關係。

<module>

       <field>

         <view>custname</view>

         <bo>custName</bo>

         <db>cust_name</db>

</field>

</module>

好處:省去在各層之間業務實體進行轉換的麻煩。

壞處:存在大量xml

相關文章
相關標籤/搜索