亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于DOM的可視化布局解析器的設(shè)計(jì)與實(shí)現(xiàn)

        2017-03-21 19:29:38陳天偉彭凌西羅茂元張翔
        計(jì)算機(jī)時(shí)代 2017年3期
        關(guān)鍵詞:解析器用戶體驗(yàn)可視化

        陳天偉 彭凌西+羅茂元+張翔

        摘 要: 基于DOM設(shè)計(jì)了一種實(shí)現(xiàn)交互界面可視化的方法,并以應(yīng)用開(kāi)發(fā)為例,闡述了工作機(jī)制及實(shí)現(xiàn)過(guò)程,為非技術(shù)人員進(jìn)行可視化改版提供了一種快速可行的實(shí)現(xiàn)方法。經(jīng)過(guò)實(shí)踐測(cè)試,通過(guò)可視化布局解析器對(duì)500個(gè)用戶的門(mén)戶改版,可減少95%的工作量,不需修改代碼,提高了代碼復(fù)用率。

        關(guān)鍵詞: 可視化; 用戶體驗(yàn); DOM; 解析器

        中圖分類號(hào):TP319 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2017)03-58-03

        Abstract: A method for realizing interactive interface visualization is designed based on DOM, and with an application development example, the working mechanism and the realization process are described, to provide non technical personnel with a quick and feasible method of realizing visual revision. The practice test proved that, using Visual layout parser for 500 users' portal revision, the workload can be reduced by 95%, no need to modify the code, and improve the code reuse rate.

        Key words: visualization; user experience; DOM; parser

        0 引言

        互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,使得建立良好用戶體驗(yàn)的要求越來(lái)越高,應(yīng)用頁(yè)面布局的可視化是一種趨勢(shì)?;ヂ?lián)網(wǎng)應(yīng)用布局中,業(yè)務(wù)功能、用戶管理、個(gè)性化設(shè)置、數(shù)據(jù)處理等方面工作量較大,且技術(shù)含量較高,一般改版,往往需要專業(yè)人員參與,涉及代碼修改,工作量較大且影響系統(tǒng)穩(wěn)定性。如何實(shí)現(xiàn)互聯(lián)網(wǎng)應(yīng)用可視化快速改版,為互聯(lián)網(wǎng)應(yīng)用系統(tǒng)的管理和維護(hù)提出了新的技術(shù)要求。本文以DOM為例,闡述基于DOM的可視化布局功能設(shè)計(jì)方法,通過(guò)在J2EE平臺(tái)上開(kāi)發(fā)實(shí)現(xiàn),并在電子政務(wù)項(xiàng)目中應(yīng)用實(shí)踐,提升了應(yīng)用系統(tǒng)的擴(kuò)展性和靈活性。

        1 設(shè)計(jì)思路

        主流的互聯(lián)網(wǎng)應(yīng)用的頁(yè)面布局一般是通過(guò)HTML方式展示。用戶交互信息通常直接以HTML代碼方式保存在頁(yè)面文件中,頁(yè)面文件通過(guò)與程序語(yǔ)言結(jié)合成動(dòng)態(tài)頁(yè)面編程語(yǔ)言,如JSP,ASP,PHP,再通過(guò)數(shù)據(jù)庫(kù)連接,在數(shù)據(jù)庫(kù)與Web服務(wù)器之間完成數(shù)據(jù)連接,實(shí)現(xiàn)用戶數(shù)據(jù)的信息展示。

        在應(yīng)用系統(tǒng)的業(yè)務(wù)功能發(fā)生改變時(shí),一般頁(yè)面的需求也需要變更,這樣頁(yè)面布局也要求改變,由于頁(yè)面文件是由程序語(yǔ)言合成的動(dòng)態(tài)頁(yè)面編程語(yǔ)言,故開(kāi)發(fā)人員才可以完成,工作量較大,本文提出了基于DOM的可視化布局的設(shè)計(jì)方法,經(jīng)過(guò)應(yīng)用實(shí)踐,可以實(shí)現(xiàn)非開(kāi)發(fā)人員也能靈活進(jìn)行布局設(shè)計(jì)和頁(yè)面可視化工作。

        DOM[2]文件是由標(biāo)記及其所標(biāo)記的內(nèi)容構(gòu)成的文本文件。DOM與HTML不同之處是標(biāo)記可自由定義。在實(shí)踐應(yīng)用中, DOM文件能夠很好地體現(xiàn)用戶數(shù)據(jù)的特征和內(nèi)容,通過(guò)DOM就可存儲(chǔ)多種信息文件,包括Web服務(wù)器與數(shù)據(jù)庫(kù)的交互信息、用戶頁(yè)面布局信息、用戶屬性信息、業(yè)務(wù)過(guò)程數(shù)據(jù)等。在實(shí)際工作中,采用DOM方式進(jìn)行頁(yè)面相關(guān)信息的存儲(chǔ)是一種可行的方式。

        用戶頁(yè)面布局文件主要由模板[3]和欄目?jī)刹糠纸M成。模板定義了網(wǎng)頁(yè)的整體風(fēng)格,包括導(dǎo)航(top)、正文部分(content)和底部(footer)三個(gè)區(qū)域。欄目則是填充在模板中的具體內(nèi)容,包括文字、圖片、圖片鏈接、圖片樣式、圖片播放、視頻切換、用戶專欄等多種形式。首先,把在模板中的具體內(nèi)容和Web服務(wù)器與數(shù)據(jù)庫(kù)的交互信息保存在DOM文件中;其次,通過(guò)編輯器進(jìn)行可視化界面進(jìn)行操作和修改;最后,用解析器將DOM解析為HTML代碼,輸出到前臺(tái),通過(guò)瀏覽器展示,可將可視化布局功能的實(shí)現(xiàn)分為DOM文件、編輯器、解析器三部分。功能結(jié)構(gòu)圖如圖2所示。

        如圖2,DOM文件中包含Web服務(wù)器與數(shù)據(jù)庫(kù)的交互信息、用戶頁(yè)面布局信息、用戶屬性信息、業(yè)務(wù)過(guò)程數(shù)據(jù)等;編輯器采用可視化界面操作,進(jìn)行用戶頁(yè)面、Web與數(shù)據(jù)庫(kù)的交互信息的維護(hù);解析器的主要實(shí)現(xiàn)兩個(gè)功能:一是對(duì)DOM文件進(jìn)行解析,通過(guò)DOM文件中的標(biāo)記,解析其中的用戶數(shù)據(jù),組裝成所需的信息,二是根據(jù)布局的要求,將組裝成所需的信息生成頁(yè)面代碼,通過(guò)瀏覽器的方式與用戶進(jìn)行交互。

        2 實(shí)現(xiàn)

        2.1 DOM文件

        DOM文件是實(shí)現(xiàn)頁(yè)面可視化布局的關(guān)鍵部分,在文件中包含網(wǎng)頁(yè)模板和所有欄目模塊的信息,文件使用統(tǒng)一格式存儲(chǔ)信息。

        DOM文件的節(jié)點(diǎn)對(duì)應(yīng)網(wǎng)頁(yè)的每個(gè)分塊,因此,頁(yè)面可視化布局是通過(guò)設(shè)置DOM文件中節(jié)點(diǎn)來(lái)實(shí)現(xiàn),這與HTML原理類似,不同的是,HTML只能設(shè)置網(wǎng)頁(yè)的布局[4],而DOM不僅設(shè)置了布局,還定義了內(nèi)容,實(shí)現(xiàn)頁(yè)面展示內(nèi)容從數(shù)據(jù)庫(kù)中實(shí)時(shí)獲取,從而達(dá)到可視化頁(yè)面布局,靈活設(shè)置應(yīng)用的目的。以下是DOM文件中表示頁(yè)面上一個(gè)欄目的節(jié)點(diǎn)代碼:

        欄目名稱

        MOD_ 001

        TEXT

        DIV

        128px

        34px

        ……

        其中,ID表示與數(shù)據(jù)庫(kù)相關(guān)的節(jié)點(diǎn)(數(shù)據(jù)庫(kù)欄目表中欄目編號(hào)為“MOD_001”的所有記錄);TYPE表示模塊類型(文字、圖片、圖片鏈接、圖片樣式、圖片播放、視頻切換、用戶專欄)以及表示位置、大小的屬性等。

        2.2 編輯器

        編輯器[5]主要功能:使用人員可以通過(guò)圖形化的可視界面,進(jìn)行操作,完成用戶交互頁(yè)面的的更新和設(shè)置。

        編輯器的實(shí)現(xiàn)中,首先,我們需要解析DOM文件,同步生成與DOM文件匹配的結(jié)構(gòu)樹(shù);其實(shí),結(jié)構(gòu)樹(shù)中每個(gè)節(jié)點(diǎn)對(duì)應(yīng)DOM文件中一個(gè)模塊,我們修改模塊屬性,實(shí)際就是對(duì)頁(yè)面布局及內(nèi)容調(diào)整;最后,我們通過(guò)對(duì)結(jié)構(gòu)樹(shù)的設(shè)置和更新,就完成了對(duì)整個(gè)頁(yè)面布局的設(shè)置和更新。編輯流程如圖3所示。

        通過(guò)對(duì)DOM節(jié)點(diǎn)新增、修改、刪除操作實(shí)現(xiàn)頁(yè)面布局的可視化。具體應(yīng)用中,在新增節(jié)點(diǎn)和修改節(jié)點(diǎn)時(shí),我們需要申明與后臺(tái)數(shù)據(jù)庫(kù)的鏈接信息;設(shè)置頁(yè)面布局信息;操作數(shù)據(jù)庫(kù);將節(jié)點(diǎn)保存生成新的XML文件。具體實(shí)現(xiàn)方法如下:

        //節(jié)點(diǎn)增加

        Element tableEl=document.createElement("MODULE");

        //節(jié)點(diǎn)更新:

        Element tableEl.setAttribute("ID ", “MOD_002”);

        //節(jié)點(diǎn)刪除

        tableEl.getParentNode().removeChild(tableEl);

        2.3 解析器

        解析器[6]的主要功能:通過(guò)DOM開(kāi)源框架,第一步先解析文件,第二步再獲取數(shù)據(jù)庫(kù)數(shù)據(jù),組裝數(shù)據(jù)信息,按照標(biāo)記,合成頁(yè)面代碼,并輸出輸出到瀏覽器,完成用戶交互。解析流程如圖4所示。

        J2EE開(kāi)源的解析方式主要有兩種,一種是DOM(Docunment Object Model)文檔樹(shù)結(jié)構(gòu)的解析;另一種是SAX(Simple API for XML)基于事件驅(qū)動(dòng)的XML技術(shù),DOM[7]是W3C制定的一種獨(dú)立語(yǔ)言和平臺(tái)標(biāo)準(zhǔn),可提供通用于各種程序語(yǔ)言、操作系統(tǒng)和應(yīng)用程序的接口。DOM的原理是把XML文檔視為一種樹(shù)結(jié)構(gòu),這種樹(shù)結(jié)構(gòu)稱為節(jié)點(diǎn)樹(shù)[8],通過(guò)節(jié)點(diǎn)樹(shù)訪問(wèn)所有的節(jié)點(diǎn)[9]。

        以2.1的XML文件為例,DOM將一個(gè)欄目模塊解析為節(jié)點(diǎn)樹(shù)[8],如圖5所示。

        開(kāi)發(fā)工具以J2EE為例,在實(shí)現(xiàn)上,采用JAXP[10](java API for XML Processing)組件實(shí)現(xiàn),JAXP是使用javaAPI對(duì)XML進(jìn)行處理的一種規(guī)范[11],它提供接口來(lái)操作DOM。JAXP的API包含在JDK中,它包括三個(gè)包:org.w3c.dom、ogr.xml.sax、javax.xml.parsers[4],我們使用第一個(gè)包org.w3c.dom。

        DOM使用DocumentBuilder類來(lái)讀取XML文件[12],它提供parse方法[10],將XML文件解析成一棵DOM樹(shù),并返回Document實(shí)例,部分代碼如下:

        DocumentBuilderFactoryImpl dbf=

        new DocumentBuilderFactoryImpl();

        DocumentBuilder db=dbf.newDocumentBuilder();

        File xmlFile=new File("C001.XML");

        Document document=db.parse(xmlFile);

        遍歷獲取XML的節(jié)點(diǎn)信息[13],進(jìn)行分析,同時(shí)根據(jù)與數(shù)據(jù)庫(kù)相關(guān)節(jié)點(diǎn)(ID)[12]獲取后臺(tái)數(shù)據(jù),最后生成HTML代碼,輸出到瀏覽器展示,完成與用戶的交互。獲得XML文件中某個(gè)欄目的根節(jié)點(diǎn)內(nèi)容代碼[14]如下:

        NodeList mylist=document.getNodeListByTagName

        ("MODULE");

        Element rootE=(Element) mylist.item(0);

        根據(jù)獲得節(jié)點(diǎn)[15]內(nèi)容構(gòu)建頁(yè)面布局,組裝成字符串并返回,并輸出到頁(yè)面,生成可視化界面,完成用戶可視化交付。

        3 結(jié)束語(yǔ)

        經(jīng)過(guò)具體應(yīng)用及第三方測(cè)評(píng),可視化布局解析器能夠解決電子政務(wù)[19]應(yīng)用中門(mén)戶網(wǎng)站的可視化設(shè)計(jì)和動(dòng)態(tài)布局等問(wèn)題,實(shí)現(xiàn)各信息點(diǎn)之間的安全互通共享,促進(jìn)應(yīng)用的發(fā)展。以移動(dòng)APP應(yīng)用為例,通過(guò)可視化布局解析器可減少95%的工作量。下一步工作,需對(duì)已有系統(tǒng)的集成、跨平臺(tái)測(cè)試等問(wèn)題進(jìn)行細(xì)化,以及對(duì)易用性方面存在的一些問(wèn)題的進(jìn)行完善,特別是在易用性和擴(kuò)展性上需要做一個(gè)平衡,以保證應(yīng)用的健康發(fā)展。

        參考文獻(xiàn)(References):

        [1] 李濤濤,劉連忠,陳夢(mèng)東.基于XML技術(shù)實(shí)現(xiàn)表格的靈活構(gòu)建[J].計(jì)算機(jī)應(yīng)用研究,2004.21(1):54-56

        [2] 李軍懷,周明全等.XML在異構(gòu)數(shù)據(jù)集成中的應(yīng)用研究[J].計(jì)算機(jī)應(yīng)用,2002.22(9):10-12

        [3] http://www.ibm.com/developerworks/cn/opensource/os-cn-eclipse-gmf2/part2/.

        [4] CRNKOVIC I. Component-based software engineeringnew challenges in software development[J]. Software Focus,2001.2(4):127-133

        [5] NAKHIMOVSKY A,MYERS T. Professional Java XMLprogramming with servlets and JSP[M]. Birmingham: Peer Information Inc.,1999:201-284

        [6] 蒲策,基于XML的網(wǎng)頁(yè)可視化布局設(shè)計(jì)與實(shí)現(xiàn)[J].成都大學(xué)學(xué)報(bào)(自然科學(xué)版),2015.34(4):371-373

        [7] 劉強(qiáng)波.一種面向界面模式的用戶界面生成技術(shù)研究[D].西北大學(xué)碩士學(xué)位論文,2014.

        [8] 姚芳,萬(wàn)建成,馮仕紅.基于模型的參數(shù)化界面設(shè)計(jì)模式[J].北

        京工商大學(xué)學(xué)報(bào):自然科學(xué)版,2008.26(2):70-74

        [9] 劉雪琴,桂盛霖,羅蕾等.AADL模型代碼自動(dòng)生成技術(shù)研究[J].計(jì)算機(jī)應(yīng)用研究,2008.25(12):3631-3635

        [10] 陶勇,桂盛霖,馬亮等.AADL模型的代碼自動(dòng)生成及集成技術(shù)[J].計(jì)算機(jī)工程,2009.35(8):59-61

        [11] 夏剛,劉林靜,樓文高.基于Schema的XML混合編碼索引查詢技術(shù)[J].計(jì)算機(jī)應(yīng)用與軟件,2016.33(2):33-37

        [12] 黃玉龍,蘇本躍,奚建清.一種基于GPU的快速XPath查詢算法[J].計(jì)算機(jī)應(yīng)用與軟件,2016.33(1):263-267,315

        [13] 王振輝,王振鐸,謝膺白,支侃買(mǎi).基于XML的Web數(shù)據(jù)庫(kù)安全中間件研究與設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用與軟件,2015.32(8):38-42,179

        [14] 鄧澤,劉汪洋,陳丹.一種面向動(dòng)態(tài)連續(xù)查詢的查詢索引[J].計(jì)算機(jī)應(yīng)用與軟件,2015.32(12):8-11,15

        [15] 趙艷妮,郭華磊.基于XML的數(shù)據(jù)遷移技術(shù)在信息系統(tǒng)升級(jí)中的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2014.31(12):52-54

        [16] 覃焌翔.業(yè)務(wù)獨(dú)立的桌面應(yīng)用開(kāi)發(fā)框架的設(shè)計(jì)和實(shí)現(xiàn)[D].北京郵電大學(xué)碩士學(xué)位論文,2015.

        [17] 李騰.基于Open XML的Web可視化報(bào)表的研究與應(yīng)用[D].南昌大學(xué)碩士學(xué)位論文,2015.

        [18] 張力生,洪小云,雷大江.基于路徑特征的XML文檔結(jié)構(gòu)相似性度量[J].計(jì)算機(jī)應(yīng)用與軟件,2015.32(7):39-42,85

        [19] 陳天偉.基于J2EE的電子政務(wù)應(yīng)用安全設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué)碩士學(xué)位論文,2007.

        猜你喜歡
        解析器用戶體驗(yàn)可視化
        基于CiteSpace的足三里穴研究可視化分析
        基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
        云南化工(2021年8期)2021-12-21 06:37:54
        基于多解析器的域名隱私保護(hù)機(jī)制
        基于Wireshark的列控中心以太網(wǎng)通信協(xié)議解析器的研究與實(shí)現(xiàn)
        基于CGAL和OpenGL的海底地形三維可視化
        “融評(píng)”:黨媒評(píng)論的可視化創(chuàng)新
        如何防御DNS陷阱?常用3種DNS欺騙手法
        一種基于無(wú)關(guān)DNS的通信隱私保護(hù)技術(shù)研究
        電子世界(2018年14期)2018-04-15 16:14:25
        手機(jī)閱讀平臺(tái)用戶體驗(yàn)影響因子分析
        淺談?dòng)脩趔w驗(yàn)在產(chǎn)品設(shè)計(jì)中的運(yùn)用
        国产精品亚洲A∨无码遮挡| 视频一区二区三区黄色| 亚洲成av人片不卡无码| 性生交大全免费看| 久久半精品国产99精品国产 | 亚洲色图+国产精品| 久久精品熟女亚洲av艳妇| 与最丰满美女老师爱爱视频| 国产乱码卡二卡三卡老狼| 中文字幕无线码中文字幕| 少妇高潮惨叫久久久久电影| 日本视频在线观看一区二区| 久久综合九色综合久99| 国产98在线 | 免费| 亚洲a级片在线观看| 亚洲综合偷拍一区二区| 亚洲国产av无码精品无广告| 天堂草原电视剧在线观看图片高清| 成人片99久久精品国产桃花岛| 国产成人美涵人妖视频在线观看| 亚洲av少妇高潮喷水在线| 亚洲av不卡一区二区三区| 国产精品一久久香蕉国产线看观看| 亚洲大片一区二区三区四区| 日本人妻精品有码字幕| 各种少妇正面着bbw撒尿视频| 三级网址在线| 综合人妻久久一区二区精品| 国产乱码人妻一区二区三区| 亚洲av综合av国产av| 久久99中文字幕久久| av在线不卡一区二区| 国模gogo无码人体啪啪| 男女啪啪免费体验区| 国产欧美亚洲另类第一页| 谷原希美中文字幕在线| 风流老太婆大bbwbbwhd视频| 黄又色又污又爽又高潮动态图 | 日韩精品一区二区三区免费观影| 国产成人国产三级国产精品| 麻豆╳╳╳乱女另类|