91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SimpleFramework組件開發的方法是什么

發布時間:2022-01-06 18:00:06 來源:億速云 閱讀:103 作者:iii 欄目:編程語言

本篇內容介紹了“SimpleFramework組件開發的方法是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

Simple組件是基于Web的,凡是和Web相關的UI或業務邏輯,都可以成為Simple組件。

單一的后臺邏輯是Simple組件不支持的,比如建立一個網絡連接、訪問數據等,但這些業務邏輯和前端Web關聯起來,比如基于Web的網絡流量監控,就可以成為Simple組件。

Simple組件隱藏了前端Web(HTML、Javascript、CSS等)的復雜性,同時,又為后端邏輯提供了一致、可操作的業務邏輯接口,并且開發者可以自由的設計這些接口。

Simple組件是開放的、友好的,任何開發者都可以很容易按照規范來開發自己的組件。

需要實現的四個接口

自定義組件,必須實現以下四個接口(類):

接口IComponentRegistry

定義組件的注冊類實例,并在系統初始化的時候注冊到系統注冊表里,這樣,自定義組件就可以使用了。代碼如下:

ComponentRegistryFactory.getInstance().regist(new YourComponentRegistry(servletContext));

IComponentRegistry主要函數的定義及說明:

String getComponentName();  組件的名稱,這個值就是在XML描述中聲明的組件標簽,且必須***   IComponentRender getComponentRender();  獲取組件的渲染器實例,詳細見下   IComponentResourceProvider getComponentResourceProvider();  獲取組件的資源提供者實例,詳細見下   AbstractComponentBean createComponentBean(PageParameter pageParameter, Element component);  創建組件的元信息定義實例。組件的元信息來自XML描述文件,該實例將按XML中的定義來初始化Bean的屬性

接口IComponentResourceProvider

組件的資源提供者,該接口主要定義組件運行所必須依賴的資源環境,這些資源包括Javascript、CSS、jar或其它已注冊的組件等。

IComponentResourceProvider主要函數的定義及說明:

ZipInputStream getRequiredResource();  以Zip的方式獲取組件所需要的全部資源。一個典型的目錄結構可能如下:  ZIP    |--jsp    |--css    |--images    |--flash    |--jar      String getResourceHomePath();  獲取組件資源被部署以后的Web訪問路徑。比如,你想獲取組件資源中的圖片路徑,可以通過以下代碼訪問:  request.getContextPath() + getResourceHomePath() + “/images/t.png”      String[] getCssPath(PageRequestResponse requestResponse);  String[] getJavascriptPath(PageRequestResponse requestResponse);  String[] getJarPath();  聲明組件所依賴的特定資源,這些資源將被系統適當的加入響應到瀏覽器的HTML中      String[] getPageJavascriptPath(PageRequestResponse requestResponse);  String[] getPageCssPath(PageRequestResponse requestResponse);  和上面是一樣,聲明組件所依賴的特定資源,區別在于路徑是基于請求資源的,可以引用其它組件的  Javascript和css資源   String[] getDependentComponents();  獲取組件資源所依賴的其它已注冊組件。比如,一個業務選擇窗口需要依賴基本的窗口組件

接口IComponentRender

組件渲染器,該接口負責向瀏覽器產生HTML(通過IComponentHtmlRender渲染)或者Javascript代碼(通過IComponentJavascriptRender渲染)。

組件渲染器還有一個重要的作用就是調用Handle中定義的業務邏輯。

IComponentHtmlRender主要函數的定義及說明:

String getHtml(ComponentParameter compParameter);  獲取組件被渲染的HTML        String getHtmlJavascriptCode(ComponentParameter compParameter);  獲取額外的相關Javascript代碼

IComponentJavascriptRender主要函數的定義及說明:

String getJavascriptCode(ComponentParameter compParameter);  獲取組件被渲染的Javascript代碼

類AbstractComponentBean

組件的描述(元)信息類。組件的描述信息是由組件開發者根據組件的特定要求而設定的,組件的描述信息來自XML描述文件,開發者必須按XML中的定義來初始化組件Bean的屬性,參考接口IComponentRegistry中的定義。

定義XML Schema

XML Schema主要是驗證XML描述文件的正確性,借助Eclipse等IDE工具,可以更準確快捷的編寫組件的定義屬性。

組件開發者需要為組件添加XML Schema支持,并包含在simple .xsd文件里。

定義Handle

Handle是組件業務的核心處理類,是留給用戶的接口來聯系組件行為的通用方式。Handle的設計由組件開發者來完成,這樣可以根據組件的行為設計出更適合的、更易操作的業務邏輯。很多Web框架僅僅提供了Action之類的控制器,對于業務開發者來講,需要做的事情就太多了,Handle明確了該關心什么,并且如何去做。

舉一個具體的實例。“數據分頁”是動態處理大量數據集的一種有效方式,下面是IPagerHandle的定義:

int getCount(ComponentParameter compParameter);                void process(ComponentParameter compParameter, int start);

IPagerHandle僅僅定義了兩個業務函數接口:getCount獲取結果集的總數,process處理游標的當前位置為start的結果集。結合PagerBean的定義(每頁的顯示數量等),就可以很容易計算出當前顯示頁的數據集。

Handle必須繼承自接口IComponentHandle,IComponentHandle定義了一些缺省的組件業務行為。

“SimpleFramework組件開發的方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

铜梁县| 比如县| 梧州市| 合水县| 林西县| 曲靖市| 西峡县| 贡山| 汤阴县| 铁岭市| 清涧县| 肇庆市| 霍林郭勒市| 龙州县| 出国| 柏乡县| 漳州市| 衡南县| 民权县| 南岸区| 宾阳县| 三穗县| 炉霍县| 安塞县| 永仁县| 八宿县| 高州市| 卫辉市| 青冈县| 军事| 清涧县| 北流市| 讷河市| 交城县| 尼玛县| 苍山县| 长子县| 紫金县| 东丰县| 大足县| 博湖县|