• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種通用報(bào)表列表組件制造技術(shù)

    技術(shù)編號:8271271 閱讀:201 留言:0更新日期:2013-01-31 03:27
    本發(fā)明專利技術(shù)公開了一種通用報(bào)表列表組件,其特征在于:所述通用報(bào)表列表組件包括:工具模塊,核心模塊,持久模塊,虛擬文件模塊;所述工具模塊包括:全局變量單元:用于承載組件所需要的所有公共變量及內(nèi)存緩存數(shù)據(jù);樣式管理單元:對列表頁面的樣式轉(zhuǎn)換進(jìn)行支持;所述核心模塊包括:控件創(chuàng)建單元:負(fù)責(zé)對于頁面上的下拉,文本控件的創(chuàng)建;解析單元:對客戶端瀏覽器發(fā)起的本組件的AJAX請求和頁面請求進(jìn)行解析;圖形創(chuàng)建單元:負(fù)責(zé)對頁面中的圖形元素的生成;核心分發(fā)單元:統(tǒng)一管理客戶端瀏覽器發(fā)起的請求,交給其他模塊;本發(fā)明專利技術(shù)解決了后臺門戶列表頁面及報(bào)表頁面開發(fā)速度緩慢,開發(fā)復(fù)雜等問題。

    【技術(shù)實(shí)現(xiàn)步驟摘要】
    本專利技術(shù)涉及一種通用列表組件。
    技術(shù)介紹
    現(xiàn)今各類B/S系統(tǒng)層出不窮,其便捷性和維護(hù)性都大幅度優(yōu)于C/S系統(tǒng)。這其中前臺門戶有較為成熟的CMS等技術(shù)架 構(gòu),但作為功能較為靈活多變的管理(后臺)門戶卻沒有與之匹配的高速開發(fā)架構(gòu)。報(bào)表列表作為管理(后臺)門戶的主體構(gòu)成,作者認(rèn)為針對這種復(fù)用度較高的元素有必要抽象提取成為一個(gè)全新的組件。這種組件的優(yōu)勢在于對于后臺門戶中的報(bào)表列表提供高速開發(fā)的同時(shí),也兼顧良好的界面外觀及功能擴(kuò)展。
    技術(shù)實(shí)現(xiàn)思路
    本專利技術(shù)是一種高度封裝的,針對后臺門戶通用的通用報(bào)表列表組件。為了達(dá)到以上目的,本專利技術(shù)采用以下技術(shù)方案一種通用報(bào)表列表組件,其特征在于 所述通用報(bào)表列表組件包括工具模塊,核心模塊,持久模塊,虛擬文件模塊;所述工具模塊包括 全局變量單元用于承載組件所需要的所有公共變量及內(nèi)存緩存數(shù)據(jù); 樣式管理單元對列表頁面的樣式轉(zhuǎn)換進(jìn)行支持;所述核心模塊包括 控件創(chuàng)建單元負(fù)責(zé)對于頁面上的下拉,文本控件的創(chuàng)建; 解析單元對客戶端瀏覽器發(fā)起的本組件的AJAX請求和頁面請求進(jìn)行解析; 圖形創(chuàng)建單元負(fù)責(zé)對頁面中的圖形元素的生成; 核心分發(fā)單元統(tǒng)一管理客戶端瀏覽器發(fā)起的請求,交給其他模塊;所述持久模塊包括 數(shù)據(jù)源實(shí)體對象單元用于承載數(shù)據(jù)源; 動態(tài)代理單元用與對數(shù)據(jù)源進(jìn)行切面的事務(wù)管理; iBatis持久支持單元用于本組件與iBatis進(jìn)行整合的支持;所述虛擬文件模塊包括 虛擬文件加載單元用于將組件內(nèi)的虛擬文件加載到內(nèi)存中,在瀏覽器客戶端發(fā)起請求的同時(shí)得到相應(yīng)地址的請求時(shí)返回?cái)?shù)據(jù)流。所述全局變量單元包括常規(guī)全局變量,內(nèi)存常駐高速緩存變量; 所述常規(guī)全局變量提供工程啟動路徑,ibatis配置參數(shù)及存儲配置信息的變量; 所述內(nèi)存常駐高速緩存變量包括頁面模板的緩存,反射方法利用Map鍵值對的形式緩存起來,鍵為訪問路徑,值為字節(jié)數(shù)組,便于以后請求高速取出。所述分頁條控件創(chuàng)建器創(chuàng)建分頁條控件。所述解析單元包括導(dǎo)出Excel解析單元針對頁面模板,自動生成需要導(dǎo)出的數(shù)據(jù)源模型。利用前臺JS代碼實(shí)現(xiàn)用戶導(dǎo)出設(shè)置界面,讓用戶指定需要導(dǎo)出的列及列的顏色,再根據(jù)用戶的選擇導(dǎo)出 Excel ; 最終頁面生成解析單元根據(jù)瀏覽器客戶端相應(yīng)進(jìn)行對模板頁面的封裝,最終反饋給瀏覽器客戶端,返回的頁面留有上次用戶錄入的查詢條件,同時(shí)還支持對模板中配置的javascript代碼的轉(zhuǎn)換并呈現(xiàn)到前臺頁面適當(dāng)?shù)奈恢茫约皩δ0逯兄付↗AVA方法的反射調(diào)用,還可以解析權(quán)限配置,提供給不同權(quán)限使用者所視效果不同的結(jié)果; 級聯(lián)請求解析單元根據(jù)下拉列表組件返回的異步請求,返回級聯(lián)數(shù)據(jù)。本專利技術(shù)的有益效果是解決了后臺門戶列表頁面及報(bào)表頁面開發(fā)速度緩慢,開發(fā)復(fù)雜等問題,包括Excel導(dǎo)出功能不需要編寫額外的代碼;點(diǎn)列頭進(jìn)行排序也不需要過多的設(shè)置,僅僅需要 在SQL增加按ID排序的功能即可,開發(fā)人員無需特別的設(shè)置即可實(shí)現(xiàn)列表的Excel導(dǎo)出,統(tǒng)計(jì)圖表生成的功能。只需加上特定的SQL條件即可完成全列手動可選排序效果。并且無需額外配置,查詢條件可保存,并且僅需要通過簡單的配置,數(shù)據(jù)源就可實(shí)現(xiàn)熱切換。附圖說明圖I為本專利技術(shù)的模塊關(guān)系示意 圖2為本專利技術(shù)配合spring, ibatis等框架的數(shù)據(jù)流轉(zhuǎn)圖。具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例對本專利技術(shù)做進(jìn)一步的說明一種通用報(bào)表列表組件包括核心模塊,其中的核心分發(fā)器用戶獲取瀏覽器客戶端的請求區(qū)別其類型交由下面的各個(gè)解析器處理,這里解析又分為導(dǎo)出Excel解析器,它主要幫助組件根據(jù)列表的配置自動的導(dǎo)出Excel,不必編寫和列表顯示類似的導(dǎo)出Excel的代碼;最終頁面生成解析器,它就是解析生成最終報(bào)表列表頁面的核心部分,在對模板進(jìn)行解析后開始對呈現(xiàn)的頁面進(jìn)行拼裝,其中又包括對權(quán)限的解析,對自定義javascript的組裝,及對自定義JAVA方法的反射調(diào)用;級聯(lián)請求解析器,是專門對于下拉框控件組合級聯(lián)的方式進(jìn)行的特殊封裝,它的作用是讓下拉框可以通過異步的方式獲取數(shù)據(jù),并且只需要指定上級ID及級聯(lián)字段就可以相當(dāng)簡單的完成一系列復(fù)雜的級聯(lián)編碼。如圖I紅色部分所示,用戶通過瀏覽器訪問項(xiàng)目時(shí),被本專利技術(shù)的核心分發(fā)器所攔截,根據(jù)請求URL判斷其類型如果URL是以〃greenreport/(不包含引號)關(guān)鍵詞開頭的(項(xiàng)目名除外),則為本專利技術(shù)的請求,再繼續(xù)判斷剩余的URL段,如果是以exportExcel/(不包含引號)關(guān)鍵詞開頭的URL則為導(dǎo)出EXCEL請求,就交給excel解析模塊處理;如果是以cascadeCombobox /〃(不包含引號)關(guān)鍵詞開頭的則為級聯(lián)請求,將交由級聯(lián)請求解析器處理;其他的請求則統(tǒng)一交由最終頁面解析器處理。如果不是以〃greenreport/〃關(guān)鍵詞開頭的則放過該請求,不做任何處理。持久模塊,它的作用是隱藏底層細(xì)節(jié),讓核心模塊層專注于業(yè)務(wù)邏輯,在擴(kuò)展性方便,也兼容多種持久模式。它又分為iBatis持久支持模塊,它讓組件能夠在SPRING容器內(nèi)和ibatis無縫兼容;jdbc持久支持模塊,它可以讓組件在沒有其他持久框架支持的情況下順利運(yùn)行;數(shù)據(jù)源實(shí)體對象,是對數(shù)據(jù)源的一個(gè)抽象體,能夠在多數(shù)據(jù)源或者數(shù)據(jù)源熱切換中起到關(guān)鍵作用。如圖I灰色部分所示,用戶請求到達(dá)任一解析器,在需要查詢數(shù)據(jù)庫時(shí),通過ibatis持久模塊,則會去調(diào)用一個(gè)ibatis的SQLMAP配置,產(chǎn)生若干次查詢,最后返回?cái)?shù)據(jù)到發(fā)起請求的解析器;通過jdbc持久模塊,則會利用XML列表報(bào)表模板里面配置的SQL直接查詢,同樣返回結(jié)果到發(fā)起請求的解析器。區(qū)分使用哪種查詢模式是根據(jù)是否含有ibatis注入實(shí)體來自動判斷的。虛擬文件模塊,它讓所有非JAVA代碼的零散文件在最終發(fā)布的時(shí)候都能整合到一個(gè)JAR包內(nèi),增加系統(tǒng)的IO性能,及發(fā)布效率。在運(yùn)行過程中,由于采用了緩存的機(jī)制也能很大程度的提高系統(tǒng)的訪問效率。如圖I藍(lán)色模塊所示,在最終頁面解析生成請求中需要用到XML列表報(bào)表模板,在請求很多時(shí),每次都I/o無疑會降低系統(tǒng)性能,因此在這里設(shè)計(jì)虛擬文件加載器,如果·該模板文件已經(jīng)被讀取過一次,則下次請求將可直接訪問全局變量容器中的字節(jié)數(shù)組來進(jìn)行解析。當(dāng)然還可以為該模塊配置其他的緩存算法。另外本專利技術(shù)在前臺展示上會使用到j(luò) query, jqueryui, HighCharts這些JS及圖片這些零碎的文件,將他們封裝到一個(gè)文件里,無疑會提高I/O性能,同時(shí)由于其本身容量也不大,因此本專利技術(shù)選擇在項(xiàng)目啟動時(shí)就將他們加載進(jìn)內(nèi)存進(jìn)行緩存。工具模塊,它主要為上述最終頁面生成解析器提供支持,其中樣式管理器,在最終頁面生成器生成HTML頁面的時(shí)候,它可以切換其展示樣式;全局變量容器則主要為虛擬文件模塊提供支持,它最大的作用就是把一些需要緩存的文件(包括JS文件,CSS樣式,樣式圖片)以Map的形式緩存起來,在需要用到的時(shí)候,就可以高效的取出,避免重復(fù)10。本文檔來自技高網(wǎng)...

    【技術(shù)保護(hù)點(diǎn)】
    一種通用報(bào)表列表組件,其特征在于:所述通用報(bào)表列表組件包括:工具模塊,核心模塊,持久模塊,虛擬文件模塊;????所述工具模塊包括:???????全局變量單元:用于承載組件所需要的所有公共變量及內(nèi)存緩存數(shù)據(jù);???????樣式管理單元:對列表頁面的樣式轉(zhuǎn)換進(jìn)行支持;????所述核心模塊包括:???????控件創(chuàng)建單元:負(fù)責(zé)對于頁面上的下拉,文本控件的創(chuàng)建;???????解析單元:對客戶端瀏覽器發(fā)起的本組件的AJAX請求和頁面請求進(jìn)行解析;???????圖形創(chuàng)建單元:負(fù)責(zé)對頁面中的圖形元素的生成;???????核心分發(fā)單元:統(tǒng)一管理客戶端瀏覽器發(fā)起的請求,交給其他模塊;????所述持久模塊包括:???????數(shù)據(jù)源實(shí)體對象單元:用于承載數(shù)據(jù)源;???????動態(tài)代理單元:用與對數(shù)據(jù)源進(jìn)行切面的事務(wù)管理;???????iBatis持久支持單元:用于本組件與iBatis進(jìn)行整合的支持;????所述虛擬文件模塊包括:???????虛擬文件加載單元:用于將組件內(nèi)的虛擬文件加載到內(nèi)存中,在瀏覽器客戶端發(fā)起請求的同時(shí)得到相應(yīng)地址的請求時(shí)返回?cái)?shù)據(jù)流。

    【技術(shù)特征摘要】
    1.一種通用報(bào)表列表組件,其特征在于 所述通用報(bào)表列表組件包括工具模塊,核心模塊,持久模塊,虛擬文件模塊;所述工具模塊包括 全局變量單元用于承載組件所需要的所有公共變量及內(nèi)存緩存數(shù)據(jù); 樣式管理單元對列表頁面的樣式轉(zhuǎn)換進(jìn)行支持;所述核心模塊包括 控件創(chuàng)建單元負(fù)責(zé)對于頁面上的下拉,文本控件的創(chuàng)建; 解析單元對客戶端瀏覽器發(fā)起的本組件的AJAX請求和頁面請求進(jìn)行解析; 圖形創(chuàng)建單元負(fù)責(zé)對頁面中的圖形元素的生成; 核心分發(fā)單元統(tǒng)一管理客戶端瀏覽器發(fā)起的請求,交給其他模塊;所述持久模塊包括 數(shù)據(jù)源實(shí)體對象單元用于承載數(shù)據(jù)源; 動態(tài)代理單元用與對數(shù)據(jù)源進(jìn)行切面的事務(wù)管理; iBatis持久支持單元用于本組件與iBatis進(jìn)行整合的支持;所述虛擬文件模塊包括 虛擬文件加載單元用于將組件內(nèi)的虛擬文件加載到內(nèi)存中,在瀏覽器客戶端發(fā)起請求的同時(shí)得到相應(yīng)地址的請求時(shí)返回?cái)?shù)據(jù)流。2.如權(quán)利要求I所述的通用報(bào)表列表組件,其特征在于 所述全局變量單元包括常規(guī)全局變量,內(nèi)存常駐高速緩存變量; 所述常規(guī)全局變量提...

    【專利技術(shù)屬性】
    技術(shù)研發(fā)人員:繆秦
    申請(專利權(quán))人:重慶亞德科技股份有限公司
    類型:發(fā)明
    國別省市:

    網(wǎng)友詢問留言 已有0條評論
    • 還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 免费一区二区无码东京热| 无码办公室丝袜OL中文字幕| 亚洲国产精品无码久久久秋霞2 | 四虎影视无码永久免费| 小SAO货水好多真紧H无码视频| 中文字幕AV无码一区二区三区| 国产成人亚洲综合无码| 日韩乱码人妻无码系列中文字幕 | 精品一区二区三区无码免费直播| 丰满少妇人妻无码| 亚洲av纯肉无码精品动漫| 国产成人无码一区二区三区| 免费人妻无码不卡中文字幕18禁 | 2019亚洲午夜无码天堂| 亚洲精品无码久久久久去q | 无码人妻丰满熟妇区毛片18| 亚洲∧v久久久无码精品| 国产在线无码精品无码| 亚洲AV无码一区二区三区电影 | 中文字幕乱码人妻无码久久| 国产裸模视频免费区无码| 无码爆乳护士让我爽| 欧洲无码一区二区三区在线观看 | 久久久久久无码国产精品中文字幕 | 亚洲真人无码永久在线| 亚洲一级特黄大片无码毛片| 无码不卡中文字幕av| 国产精品无码亚洲精品2021| 日本无码WWW在线视频观看| 久久久久无码精品国产不卡 | 久久无码人妻一区二区三区| 久久无码无码久久综合综合 | 亚洲最大av资源站无码av网址| 在线a亚洲v天堂网2019无码| 人妻无码人妻有码中文字幕| 日韩精品无码免费专区午夜不卡 | 精品无码免费专区毛片| 无码不卡av东京热毛片| 亚洲熟妇无码av另类vr影视| 日本无码一区二区三区白峰美| 精品无码专区亚洲|