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

        ?

        基于Flex+Spring小區(qū)信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

        2013-12-31 00:00:00陳志宇胡秀兵楊朔楊威
        計(jì)算機(jī)時(shí)代 2013年12期

        摘 要: Flex是一個(gè)高效并且免費(fèi)的開源框架,可用于構(gòu)建具有表現(xiàn)力的Web應(yīng)用程序,這些應(yīng)用程序能通過Adobe Flash Player執(zhí)行,運(yùn)行時(shí)跨瀏覽器、桌面和操作系統(tǒng),實(shí)現(xiàn)一致的部署。Spring是一個(gè)輕量級(jí)IoC(控制反轉(zhuǎn))和AOP(面向切面編程)的容器框架,它使J2EE開發(fā)變得更加容易,能提供一種統(tǒng)一并且高效的方式來構(gòu)造整個(gè)應(yīng)用?;贔lex+Spring設(shè)計(jì)并實(shí)現(xiàn)了小區(qū)信息系統(tǒng),該系統(tǒng)能方便地從大量數(shù)據(jù)中提取出小區(qū)信息,前臺(tái)利用Flex來實(shí)現(xiàn),后臺(tái)基于Spring框架用Java編寫。利用庖丁分詞器對(duì)收集來的地址信息進(jìn)行分詞并存入關(guān)鍵詞庫,最后利用關(guān)鍵詞創(chuàng)建小區(qū)信息。

        關(guān)鍵詞: Flex; Spring; 控制反轉(zhuǎn); 面向切面; J2EE

        中圖分類號(hào):TP311.1 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2013)12-32-03

        Design and implementation of community information system based on flex and spring

        Chen Zhiyu1, Hu Xiubing2, Yang Shuo2, Yang Wei2

        (1. Hangzhou Dianzi University, Hangzhou, Zhejiang 310018; 2. Zhejiang Topcheer Information Technology Co.,Ltd)

        Abstract: Flex is a kind of highly efficient and free open source framework. It can be used to build a variety of Web applications. These applications can take advantage of Adobe Flash Player, running across browser, desktop, and operating system to achieve a consistent deployment. Spring is a kind of lightweight IoC(Inversion of Control) and aspect-oriented container framework. It can make J2EE development easier and provide an efficient way to construct the entire application. The system can easily extract the community information from a large number of data. The system uses Flex to design the interface and the address information for participle into words library. Finally, the keywords are used to create community information.

        Key words: Flex; Spring; IoC; AOP; J2EE

        0 引言

        隨著網(wǎng)絡(luò)的快速發(fā)展,很多門戶類的信息網(wǎng)站如趕集網(wǎng)、58同城等都發(fā)布著房屋地址信息,包括樓盤信息、二手房掛牌數(shù)據(jù)、商品房公示數(shù)據(jù)、房屋出租數(shù)據(jù)等。網(wǎng)上數(shù)據(jù)采集方式有很多,如何從大量數(shù)據(jù)中提取出小區(qū)信息一直是個(gè)難題。本文通過對(duì)Spring框架的研究,利用Flex技術(shù)和BlazeDS實(shí)現(xiàn)了小區(qū)信息系統(tǒng)。

        1 Flex介紹

        該系統(tǒng)前臺(tái)的開發(fā)利用Flex技術(shù),它是目前最流行的Rich Internet Application(富因特網(wǎng)應(yīng)用程序)開發(fā)技術(shù)之一,RIA這個(gè)詞是Macromedia發(fā)明的,它是開發(fā)新一代Web應(yīng)用的有效工具[1]。在傳統(tǒng)的開發(fā)模式中,Java Web應(yīng)用開發(fā)是利用jsp技術(shù),而.Net利用的是Asp技術(shù),它們都需要依靠瀏覽器的動(dòng)態(tài)解釋才能夠正常顯示和執(zhí)行,這樣的開發(fā)方式經(jīng)常會(huì)給代碼調(diào)試帶來一定的難度。在開發(fā)過程中,往往同一段代碼在不同的瀏覽器或不同版本的瀏覽器下會(huì)有不一樣的外觀和動(dòng)作效果,而且界面外觀的調(diào)試也非常耗時(shí)、耗力。Flex的出現(xiàn)正好解決了上述問題。

        Flex主要由兩部分構(gòu)成,一是MXML聲明式標(biāo)記語言,它是基于XML的,用于定義應(yīng)用程序的結(jié)構(gòu);二是ActionScript,用于為應(yīng)用程序添加所需的功能。Flex框架的原理是通過Flex編譯器將MXML、ActionScript以及一些Flex類庫編譯成SWF文件,然后由Flash Player在客戶端執(zhí)行該SWF文件[2]。在企業(yè)級(jí)應(yīng)用當(dāng)中,F(xiàn)lex采用N層架構(gòu)和面向服務(wù)的應(yīng)用程序體系結(jié)構(gòu),在使用MVC(模型、視圖、控制器)設(shè)計(jì)模式時(shí),可以將表示邏輯從業(yè)務(wù)邏輯中分離出來,控制器負(fù)責(zé)處理用戶交互邏輯,而服務(wù)器端業(yè)務(wù)邏輯控制器用來負(fù)責(zé)處理業(yè)務(wù)邏輯。Flex支持Adobe公司自定義的AMF通信協(xié)議,它能夠?qū)lash/Flex對(duì)象進(jìn)行快速序列化、反序列化,采用二進(jìn)制壓縮來傳輸數(shù)據(jù),具有數(shù)據(jù)安全性高、傳輸快的優(yōu)點(diǎn)。

        2 Spring框架

        Spring框架是一個(gè)優(yōu)秀的多層J2EE系統(tǒng)框架,它由Rod Johnson創(chuàng)建。它的出現(xiàn)解決了企業(yè)應(yīng)用開發(fā)的復(fù)雜性問題,提供了一個(gè)非常輕量級(jí)的解決方案。Spring的核心是個(gè)輕量級(jí)的容器,它是實(shí)現(xiàn)控制反轉(zhuǎn)(IoC)容器、非侵入性的框架,并提供AOP(面向切面)的實(shí)現(xiàn)方式[3]。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情,它的Context文件內(nèi)容配置靈活,通過注入就可以將Bean之間的關(guān)系關(guān)聯(lián)起來,而不是在Bean中去實(shí)現(xiàn)關(guān)聯(lián)關(guān)系,并且實(shí)現(xiàn)了MVC Web框架。

        Spring由七個(gè)模塊構(gòu)成,如圖1所示。

        [

        Spring AOP

        ][Spring ORM][Spring DAO][Spring Web][Spring Context][Spring Web

        MVC][Spring Core

        Supporting utilities

        Bean container]

        圖1 Spring模塊

        2.1 AOP模塊

        AOP(Aspect-oriented programming)是Spring的一個(gè)主要功能,它是相對(duì)傳統(tǒng)OOP編程技術(shù)提出來的,提供了對(duì)面向切面編程的豐富支持,可以很容易地使Spring框架管理的任何對(duì)象支持AOP。Spring的AOP支持基于AOP聯(lián)盟定義的API,它的目標(biāo)是通過定義一組共同的接口和組件來促進(jìn)AOP的使用以及不同的AOP實(shí)現(xiàn)之間的互用性[4]。

        2.2 核心容器

        Spring Core實(shí)現(xiàn)了Spring框架最基本的功能,它提供了依賴注入特征來實(shí)現(xiàn)容器對(duì)Bean的管理。它的主要組件是Bean Factory,該組件是任何Spring應(yīng)用的核心。BeanFactory是工廠模式的一個(gè)實(shí)現(xiàn),它使用控制反轉(zhuǎn)(IoC)把應(yīng)用程序的配置和依賴說明從實(shí)際的應(yīng)用程序代碼中分離出來,利用Java的反射機(jī)制,實(shí)現(xiàn)對(duì)系統(tǒng)中的JavaBean的管理。

        2.3 Web模塊

        Spring提供了MVC Web框架的解決方案,使得Spring能與Struts框架進(jìn)行方便的結(jié)合,允許在Struts類內(nèi)部使用Spring的DI法則。使用Spring Web框架的好處是可以善用IoC和AOP的功能,可以輕松地替換使用不同的View層技術(shù)。

        2.4 ORM模塊

        Spring ORM指的是對(duì)象/關(guān)系映射集成模塊,它只是為幾種流行的ORM框架提供了集成方案,包括了與數(shù)據(jù)持久化相關(guān)的技術(shù)Hibernate、JDO和iBATIS SQL映射。Spring的事務(wù)管理支持這些ORM框架中的每一個(gè)也包括JDBC,可以很容易地實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的訪問[5]。

        2.5 Context模塊和DAO模塊

        上下文模塊使Spring成為一個(gè)框架,它類似于Struts框架中的XML配置文件,為整個(gè)Spring框架提供上下文信息。該模塊擴(kuò)展了BeanFactory的概念,也提供了許多如電子郵件、EJB集成等企業(yè)服務(wù)。Spring DAO提供了一個(gè)有效的異常層次結(jié)構(gòu),用來管理來自不同數(shù)據(jù)庫服務(wù)器拋出的錯(cuò)誤消息。

        3 小區(qū)信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

        本系統(tǒng)的開發(fā)平臺(tái)用的是Eclipse,前臺(tái)用Flex實(shí)現(xiàn),而后臺(tái)是基于Spring框架用Java編寫的。系統(tǒng)的房屋地址信息主要以網(wǎng)上數(shù)據(jù)為來源,包括樓盤信息、二手房掛牌數(shù)據(jù)、商品房公示數(shù)據(jù)、房屋出租數(shù)據(jù)等。利用庖丁分詞器對(duì)收集來的地址信息進(jìn)行分詞并且存入關(guān)鍵詞庫,最后選中已經(jīng)審核好的關(guān)鍵詞進(jìn)行創(chuàng)建小區(qū)。用戶可以選擇城市,查看該城市下的小區(qū)列表,選中某個(gè)小區(qū),可以查看、編輯小區(qū)信息。系統(tǒng)的總體流程如圖2所示。

        [房屋地址信息][小區(qū)信息][未審核的關(guān)鍵詞][有效的關(guān)鍵詞][利用分詞器產(chǎn)生] [形成] [審核產(chǎn)生]

        圖2 系統(tǒng)流程圖

        3.1 數(shù)據(jù)庫設(shè)計(jì)

        我們采用的是Oracle數(shù)據(jù)庫,該數(shù)據(jù)庫具有可用性強(qiáng)、可擴(kuò)展性強(qiáng)和數(shù)據(jù)安全性強(qiáng)等特點(diǎn)。本系統(tǒng)主要用到三張表:acq_secondhandhouse、sys_addresskeyword、hda_district。acq_secondhandhouse是抓取的房屋信息,主要屬性包括房屋地址、區(qū)域ID、抓取日期等。sys_addresskeyword是關(guān)鍵詞記錄,用于存儲(chǔ)關(guān)鍵詞、關(guān)聯(lián)area、關(guān)聯(lián)district、分析匹配數(shù)量等信息。小區(qū)信息記錄表hda_district存儲(chǔ)了小區(qū)名字、父區(qū)域ID、區(qū)域ID等信息。

        3.2 服務(wù)器設(shè)計(jì)

        本系統(tǒng)采用Tomcat v7.0服務(wù)器,該服務(wù)器是一個(gè)免費(fèi)的開源的Web應(yīng)用服務(wù)器,屬于輕量級(jí)的應(yīng)用服務(wù)器,普遍應(yīng)用在中小型系統(tǒng)中,是開發(fā)和調(diào)試JSP程序的首選。通過Hibernate連接數(shù)據(jù)庫,hibernate的配置如圖3所示。

        圖3 Hibernate配置

        3.3 Flex訪問服務(wù)器數(shù)據(jù)設(shè)計(jì)

        本文Flex訪問服務(wù)器數(shù)據(jù)的方式是BlazeDS,BlazeDS是一個(gè)基于服務(wù)器的Java遠(yuǎn)程調(diào)用和Web消息傳遞技術(shù),它能夠使得后端的Java應(yīng)用程序和運(yùn)行在瀏覽器上的Flex應(yīng)用程序相互通信。為了實(shí)現(xiàn)Flex與Java通信,需要配置remoting-config.xml和services-config.xml,前者是描述遠(yuǎn)程調(diào)用Java類的服務(wù)配置文件,后者是描述服務(wù)基本設(shè)置的配置文件。本文主要用到的服務(wù)有AddresskeywordService、DistrictService、AreaService。

        Flex主要負(fù)責(zé)客戶端的展現(xiàn),圖4是Web應(yīng)用的整體框架。

        [

        SWF

        ][

        BlazeDS

        ][JAVA

        代碼] [數(shù)據(jù)庫][客戶端(瀏覽器)][服務(wù)器端]

        圖4 Web應(yīng)用框架

        3.4 小區(qū)信息系統(tǒng)各個(gè)功能的實(shí)現(xiàn)

        3.4.1 選擇區(qū)域控件的實(shí)現(xiàn)

        用戶可以通過選擇區(qū)域控件選擇自己要操作的城市,通過點(diǎn)擊切換按鈕彈出區(qū)域窗口,然后選擇身份,調(diào)用AreaService服務(wù)訪問數(shù)據(jù)庫來顯示該省份下的所有城市。最后選擇完畢后給公共變量selectedArea賦值。選擇區(qū)域控件如圖5所示。

        圖5 選擇區(qū)域界面

        3.4.2 顯示和編輯小區(qū)列表的實(shí)現(xiàn)

        當(dāng)用戶選中了某個(gè)城市后,DataGrid控件會(huì)根據(jù)變量selectedArea調(diào)用DistrictService服務(wù)來顯示該城市下已經(jīng)生成的所有小區(qū)。圖6中DataGrid顯示的是杭州市下的所有已經(jīng)生成的小區(qū)名字。DataGrid利用監(jiān)聽事件根據(jù)selectedArea的變化而實(shí)時(shí)產(chǎn)生相應(yīng)的變化。雙擊選中某個(gè)小區(qū)名字,系統(tǒng)會(huì)自動(dòng)彈出一個(gè)更改小區(qū)信息和別名的窗口如圖7所示。

        圖6 顯示該城市所有小區(qū) 圖7 修改小區(qū)信息界面

        3.4.3 利用關(guān)鍵詞生成小區(qū)

        當(dāng)選擇某個(gè)城市后,AdvancedDataGrid控件會(huì)調(diào)用AddresskeywordService服務(wù)來訪問數(shù)據(jù)庫,從而顯示該城市下所有的關(guān)鍵詞記錄。選擇已經(jīng)審核過的關(guān)鍵詞記錄,并且小區(qū)編號(hào)是未創(chuàng)建的,點(diǎn)擊生成小區(qū)信息按鈕,隨后在DataGrid中會(huì)顯示剛創(chuàng)建的小區(qū)名字。點(diǎn)擊刷新按鈕也可以查看是否已經(jīng)創(chuàng)建成功,刷新的代碼如圖8所示。利用關(guān)鍵詞生成的小區(qū)信息界面如圖9所示。

        圖8 刷新的代碼

        4 結(jié)束語

        Eclipse是一個(gè)開源的、基于Java的可擴(kuò)展開發(fā)平臺(tái)。本系統(tǒng)是在Eclipse平臺(tái)下開發(fā)的,可以將復(fù)雜的、不規(guī)則的數(shù)據(jù)進(jìn)行分類,利用關(guān)鍵詞記錄生成小區(qū)信息。對(duì)于如何對(duì)關(guān)鍵詞進(jìn)行自動(dòng)地審核還有待于進(jìn)一步研究。本文簡(jiǎn)要介紹了Flex技術(shù)和Spring框架,詳細(xì)說明了小區(qū)信息系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn),包括數(shù)據(jù)庫設(shè)計(jì)、Flex訪問服務(wù)器數(shù)據(jù)設(shè)計(jì)等。通過本系統(tǒng)的實(shí)現(xiàn),讓我們對(duì)于Spring框架的配置和Flex前臺(tái)的界面設(shè)計(jì)積累了經(jīng)驗(yàn),為今后的Web開發(fā)打下了良好的基礎(chǔ)。

        參考文獻(xiàn):

        [1] Charles E. Brown.The Essential Guide to Flex 3[M].New York,

        2008:3-4

        [2] 姜天格.Flex3企業(yè)級(jí)Web應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[M].機(jī)械工業(yè)出版

        社,2009.

        [3] 惠燕,潘煜.基于SSH的畢業(yè)設(shè)計(jì)管理平臺(tái)的研究[J].電子設(shè)計(jì)工程,

        2011.1:23-26

        [4] 郭宏杰,朱榮.基于SSH的物流信息系統(tǒng)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)與

        數(shù)字工程,2009.37(2):63-65

        [5] 陽雪峰,陳文臣.基于Spring、Struts、Hibernate輕量級(jí)架構(gòu)開發(fā)[M].

        機(jī)械工業(yè)出版社,2009.

        国产91吞精一区二区三区| 久久国产成人精品国产成人亚洲| 午夜视频在线在免费| 99久久精品自在自看国产| 中文字幕亚洲精品码专区| 成人一区二区三区国产| 亚洲精品国产一区二区| 亚洲av日韩av不卡在线观看| 无码中文字幕av免费放| 国产区一区二区三区性色| 日日摸日日碰人妻无码| 精品国产乱码久久久软件下载 | 蜜桃av夺取一区二区三区| 二区免费在线视频观看| 亚洲av片在线观看| 日韩A∨精品久久久久| 日韩久久免费精品视频| 二区三区三区视频在线观看| 久久亚洲私人国产精品va| 免费毛片在线视频| 日本高清一区二区三区在线 | 人妻秘书被社长浓厚接吻| 国产精品无码一区二区三区在 | 亚洲精品二区中文字幕| 国产精品成人黄色大片 | 亚洲va国产va天堂va久久| 香蕉久久夜色精品国产2020| 精品亚洲一区二区视频| 男女无遮挡高清性视频| 国产伦久视频免费观看视频| 亚洲地区一区二区三区| 蜜桃在线高清视频免费观看网址| 亚洲国产欧美在线观看| 亚洲人成网站77777在线观看| 国产精品一区二区久久精品蜜臀| 欲女在线一区二区三区| 自拍偷自拍亚洲精品情侣| 8090成人午夜精品无码| 久久av粉嫩一区二区| 激情影院内射美女| 国产情侣一区在线|