<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 11  文章 - 79  trackbacks - 0
    <2011年11月>
    303112345
    6789101112
    13141516171819
    20212223242526
    27282930123
    45678910

    歡迎合作

     

    聯系方式:openhandx@foxmail.com

     

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

     

     

     

     

     

     

      OpenHandX-Unreal 1.01

    輕量web框架

     

     

     

     

     

     

     

     

     

     

    2012-10-5

     

    作者:彭明華

    openhandx@foxmail.com

     

    本文檔中的任何部分都不得以任何手段任何形式進行復制與傳播

     

     

     

    目錄

    1            前言

    2                組件

    3                主要特性

    4                SSScript-Service)腳本服務框架

    5                MVCModel-View-Controller)框架

    6                文件上傳支持

    7                Web Service功能

    8                Spring支持

    9            OpenHandX所有項目介紹

     

     


     

    1          前言

    OpenHandx-Unreal是一個可擴展的輕量級web框架。UnrealAjax技術為核心,開創了SSScript-Service)腳本服務框架開發模式,并完全兼容MVCModel-View-Controller)框架。SS框架可以輕易完成頁面的 Script對象與Pojo對象的創建、操作、轉化、傳輸,實現了web層與Service層的完全分離和解耦,使Service層的領域驅動設計能徹底地貫徹。Unreal還提供了統一的Web Service功能,為企業打造了統一的服務總線奠定基礎。Unreal封裝嚴密,使用時不需要學習太多的抽象類、接口等概念,因此容易上手,開發效率更高。2          組件

    組件名稱

    說明

    open-ureal1.0.jar

    Ureal核心包,提供Web框架支持,Web ServiceWeb Client支持

    unreal-tag.tld

    頁面標簽庫

    open-unreal.js

    提供了Ajax請求調用的方法,原生的open模型對象轉化

     

     

    3          主要特性

    新創的SSScript-Service)框架

    完全兼容MVCModel-View-Controller)框架

    原生支持Ajax技術

    簡化的xml配置或零配置

    Web Service功能

    文件上傳支持

    Spring支持

     

    4          SSScript-Service)腳本服務框架

    傳統的MVCModel-View-Controller)框架是對頁面Form提交請求->應答刷新頁面這種情況設計的,因此支持非常好,并得到了廣泛的應用。但是隨著web2.0的普及Ajax技術得到應用的場景越來越多,而Ajax應答是具體數據,因此MVC框架并不適合AjaxSS框架采用JavaScript提交請求,服務端采用Service方式提供服務,最后將應答的結果返回到客戶端,JavaScript再將Json數據解析成JavaScript對象。

    Unreal SS框架體系結構


    1、 客戶端的JavaScriptasynServicesynService方法)發起一個請求

    2、 UnrealSS ServletSsDispatch查找請求和確定適當的Service

    3、 SsDispatch根據請求的方法和參數名匹配要調用的Service的方法,再將參數轉化成方法參數需要的數據對象

    4、 Service方法執行該時調用相應的業務邏輯,并獲取返回結果(Pojo對象)

    5、 將結果(Pojo對象)轉化成Json字符串返回到客戶端

    6、 客戶端的將Json字符串轉化成JavaScript對象

    客戶端頁面調用后臺的Service方法就象調用本地的JavaScript方法一樣簡單,并且Service方法返回的Pojo對象也被轉化成了JavaScript對象。因此客戶端頁面可以直接獲取Pojo對象的數據。

    SS框架獲取頁面參數不依賴FormAction的屬性注入,而是通過Service方法的參數獲取。SS框架接受的參數也不再是頁面FormInput輸入框,而是JavaScript數據對象

    例如有一個JavaScript對象:

    {

        msg:"hello",

        count:"10",

        amount:"20.1",

        time:"2012-1-1 1:2:3.4"

    }

    被調用Service的方法:

    public Result input(String msg , int count , float amount , Timestamp time)

    假設Result有以下屬性

        public String getText() {

           return text;

        }

        public void setText (String text) {

           this.text = text;

        }

        public BigDecimal getMoney() {

           return money;

        }

     

        public void setMoney (BigDecimal money) {

           this.money = money;

        }

    最終返回到瀏覽器的JavaScript對象為

    {

        text:"hello world",

    money:"100.00"

    }

    input方法被執行時先注入的參數msg"hello",count10amount20.1time2012-1-1 1:2:3.4。返回也是將Java對象轉化成JavaScript對象。這些都是有SS框架完成的。

    SS框架就是客戶端腳本直接調用后臺服務的框架,匹配規則是后臺服務的類名、方法名、參數名。

    SS框架的優點:

    1、 簡化web層,做web開發者只要關注頁面和Script代碼,而不必寫ActionForm及其他Java層的代碼,去除了頁面與后臺代碼的偶合度,使得頁面代碼復用得到了提高,也利于本地調試。這些都大大節提高了開發的質量和效率,使web開發者有更多的時間關注頁面的友好性

    2、 做后臺開發者只要按照領域驅動的思想完成DomainDAOService等,開發的是純粹的業務代碼,完全不用關注頁面的實現,使得領域驅動的設計思想更加自由,Service復用更加廣泛,同時代碼的復用和測試變得更加容易

    5          MVCModel-View-Controller)框架

    傳統的MVCModel-View-Controller)框架應用廣泛,Unreal也兼容這種應用模式,滿足特定開發者的需求,UnrealMVC框架提供了兩種方式:Action方式、Ajax方式

    Action方式




    1.        客戶端Web瀏覽器的發起一個請求

    2.        UnrealAction ServletActionDispatch查找請求和確定適當的Action

    3.        ActionDispatch根據請求的方法和參數名確定要調用的Action的方法, 再將頁面數據轉化Form對象

    4.        Action方法執行該時調用相應的業務邏輯

    5.        Action執行的結果(分發的頁面路徑),定向到相應的頁面

    6.        最終頁面返回客戶端Web瀏覽器

     

    Ajax方式



     

    Unreal Ajax方式與Action方式不同在于AjaxAction返回的是數據對象(Pojo)這個對象最終以Json字符串返回到客戶端,由客戶端轉化成JavaScript對象。

    Unreal MVC的優點:

    1、 Action類不用實現任何接口,可以使一個普通的java

    2、 Action類是保證線程安全的,每一次請求產生一個實例(使用Spring容器原型模式管理Action的時候除外)

    3、 Action類不依賴Servlet APIHttpServletRequestHttpServletResponse,便于通過初始化、設置屬性、調用方法來測試,“依賴注入”支持也使測試更容易

    4、 Unreal MVC可以使用Action+Form方式也可以是ActionForm方式傳遞參數

    5、 Unreal MVC提供了Ajax方式的原生支持

     

     

    6          文件上傳支持

    UnrealContext是上下文管理類,保存了當前請求的HttpServletRequestHttpServletResponseServletContext。除此之外還提供了文件上傳的支持,UploadSuppportgetFileItems()方法返回當前請求所有上傳文件。

     

    7          Web Service功能

    Web Service功能分為OpenServiceOpenClient OpenClient負責與OpenService通訊、調用、數據轉換,OpenService負責服務的提供、數據轉換。

    體系結構如下:





    1.      應用程序使用OpenClient調用遠程服務器的OpenService

    2.      OpenClient將參數轉化成為xml并向OpenService服務器發起請求

    3.      遠程服務器OpenService查找請求和匹配適當的Service

    4.      遠程服務器OpenService根據請求的方法和參數名匹配要調用的Service的方法, 再將xml參數轉化成方法的參數數據對象

    5.      Service方法執行該時調用相應的業務邏輯,并獲取返回結果(Pojo對象)

    6.      遠程服務器OpenService將結果(Pojo對象)轉化成xml返回到客戶端

    7.      應用程序的OpenClientxml轉化 Pojo對象返回

    OpenService的特性:

    1.      UnrealOpenService是一個通用的WebService工具,包括ServiceClient,數據轉化xml和傳輸不需要開發者的關注

    2.      OpenService提供了Java原生的數據類型、BigIntegerBigDecimalDateTimeTimestampPojo對象、Open-Common數據模型(RecordVORecordSetVOMulripleVO)、可串行化對象的傳輸

    3.      支持Https傳輸加密和Gzip壓縮

     

    8          Spring支持

    Unreal SSMVC框架以及OpenService的都提供了對Spring的支持。ActionActionFormService層都可以使用Spring Ioc容器管理。

     

     

     

    1          OpenHandX所有項目介紹

    項目名稱

    說明

    open-Common

    公共開發包,整理了日常開發中可能經常用到的方法、工具類

    open-Chart

    圖表工具,核心采用jfreechart,將jfreechart重新包裝簡化,方便使用

    open-Report

    多維度報表工具,支持表達式計算、匯總、分組、排序、集成圖表,支持Excel輸出

    open-Real

    持久層報表工具,封裝jdbc的增、刪、改、查。具有自動匹配sql條件,orm影射

    open-Batch

    分布式批量架構,處理復雜耗時的數據加工或ETL加工

    open-Unreal

    SSScript-Service)腳本服務Web開發框架,并提供WebServie功能

    open-River

    基于open-unrealESB產品,提供代理和點對點模式,并提供快速消息傳輸通道

    OpenHandX下載地址:http://code.google.com/p/openhandx2/

     

    posted on 2011-11-15 08:47 彭明華 閱讀(1288) 評論(2)  編輯  收藏 所屬分類: OpenHandX核心

    FeedBack:
    # re: OpenHandX-Unreal 1.0 2011-11-15 09:06 阿蛇
    歷時一年,博主終于有更新了!  回復  更多評論
      
    # re: OpenHandX-Unreal 1.0 2011-11-15 12:15 水果盤
    不錯  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 在线a级毛片免费视频| 午夜视频在线免费观看| 特级淫片国产免费高清视频| 亚洲国产电影在线观看| 99免费在线观看视频| 久久亚洲春色中文字幕久久久| 在线成人精品国产区免费| 亚洲日韩精品无码专区网址| 三年片在线观看免费| 亚洲国产精品特色大片观看完整版| 一级做a爱片特黄在线观看免费看| 亚洲黄黄黄网站在线观看| 免费在线观看自拍性爱视频| 又爽又高潮的BB视频免费看| 一区二区在线免费视频| 奇米影视亚洲春色| 日韩免费在线视频| 亚洲综合无码一区二区三区| 成年女人毛片免费播放视频m| 亚洲国产成人久久综合| 亚洲国产午夜福利在线播放 | 精品亚洲综合久久中文字幕| 久久精品免费观看国产| 亚洲一区二区三区国产精品无码| 最近中文字幕无吗免费高清| 国产精品久久久久久亚洲小说| 亚洲精品视频免费观看| 一级毛片免费视频| 亚洲欧洲日产国码久在线| 国产a级特黄的片子视频免费| 好猛好深好爽好硬免费视频| 久久丫精品国产亚洲av| 精品国产麻豆免费网站| 一区视频免费观看| 亚洲精品国产福利片| 国产免费人视频在线观看免费 | 一级美国片免费看| 亚洲三级电影网址| 国产精品免费一级在线观看| 免费在线中文日本| 亚洲成av人片天堂网无码】|