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

        ?

        基于MEAN架構(gòu)與圖數(shù)據(jù)庫的企業(yè)社交網(wǎng)絡(luò)平臺設(shè)計(jì)

        2016-12-22 21:44:16石春菊
        軟件導(dǎo)刊 2016年11期

        石春菊

        摘 要:從社交網(wǎng)絡(luò)發(fā)展現(xiàn)狀和企業(yè)需求出發(fā),設(shè)計(jì)了企業(yè)社交網(wǎng)絡(luò)平臺。對平臺功能進(jìn)行了劃分,從平臺易用性和易維護(hù)角度進(jìn)行架構(gòu)設(shè)計(jì),討論了基于MEAN架構(gòu)的系統(tǒng)實(shí)現(xiàn)模式。在此基礎(chǔ)上依據(jù)數(shù)據(jù)特點(diǎn),設(shè)計(jì)了圖數(shù)據(jù)庫存儲模型。

        關(guān)鍵詞關(guān)鍵詞:企業(yè)社交網(wǎng)絡(luò);MEAN;MVC;REST服務(wù);Neo4j圖數(shù)據(jù)庫

        DOIDOI:10.11907/rjdk.161967

        中圖分類號:TP319

        文獻(xiàn)標(biāo)識碼:A 文章編號文章編號:16727800(2016)011008202

        0 引言

        社交網(wǎng)絡(luò)平臺信息交流形成龐大數(shù)據(jù),對這些數(shù)據(jù)進(jìn)行分析和預(yù)測,發(fā)現(xiàn)有價值的信息,使社交平臺根據(jù)用戶偏好,以主推特定廣告等方式受益。中國制造2025規(guī)劃提出,制造業(yè)要向智造業(yè)轉(zhuǎn)化,企業(yè)的轉(zhuǎn)化不僅需要CRM、ERP、SRM等相關(guān)軟件組合應(yīng)用,更多的是對資源優(yōu)化、流程優(yōu)化。資源優(yōu)化就包含企業(yè)社交關(guān)系的優(yōu)化。近年來,企業(yè)對社交網(wǎng)絡(luò)的需求越來越強(qiáng)烈[1]。企業(yè)通過分析和處理網(wǎng)絡(luò)中的大量數(shù)據(jù),整合消費(fèi)者關(guān)系、市場關(guān)系,并對企業(yè)供應(yīng)關(guān)系進(jìn)行分析,以優(yōu)化企業(yè)業(yè)務(wù)流程和有效制定市場策略。利用社交網(wǎng)絡(luò)理論,對企業(yè)網(wǎng)絡(luò)建模,為業(yè)務(wù)提供戰(zhàn)略性指導(dǎo),對供求關(guān)系、客戶關(guān)系、地域關(guān)系等建立對應(yīng)關(guān)系圖數(shù)據(jù)庫,通過對圖數(shù)據(jù)庫的查詢、增加、修改和刪除,管理企業(yè)動態(tài)交互性信息。利用網(wǎng)絡(luò)平臺,企業(yè)關(guān)系網(wǎng)絡(luò)可對用戶管理、企業(yè)關(guān)系中的供求關(guān)系管理,以圖數(shù)據(jù)的形式展示企業(yè)關(guān)系、公布企業(yè)動態(tài),使企業(yè)信息交互性更強(qiáng),消除企業(yè)內(nèi)部與外部信息不一致的情況,與員工分享工作任務(wù)和戰(zhàn)略決策,為企業(yè)推薦優(yōu)秀的合作伙伴。

        1 系統(tǒng)總體設(shè)計(jì)

        1.1 系統(tǒng)功能及流程

        ENFORCE(企業(yè)社交網(wǎng)絡(luò)平臺)系統(tǒng)用戶分為企業(yè)用戶和平臺管理員兩種角色,企業(yè)用戶分為認(rèn)證用戶和未認(rèn)證用戶。經(jīng)過身份驗(yàn)證的用戶,可以選擇企業(yè)并獲得該企業(yè)數(shù)據(jù),能夠?qū)@些數(shù)據(jù)進(jìn)行維護(hù)。未認(rèn)證用戶只能瀏覽這些數(shù)據(jù)。

        企業(yè)管理員可進(jìn)行企業(yè)信息維護(hù)、員工維護(hù)、數(shù)據(jù)中心、企業(yè)展廳和信息交流5大功能管理。

        企業(yè)信息維護(hù)指企業(yè)關(guān)系建立、查看、解除、發(fā)出關(guān)系申請、拒絕申請查看等信息維護(hù);員工維護(hù)功能包括查詢、增加、刪除企業(yè)員工;數(shù)據(jù)中心功能有企業(yè)關(guān)系圖展示、企業(yè)供應(yīng)關(guān)系展示、企業(yè)熱點(diǎn)圖展示;企業(yè)展廳主要展示企業(yè)生產(chǎn)、經(jīng)營、證書、獲獎等信息;信息交流平臺可提供企業(yè)員工內(nèi)的信息交流,也可提供企業(yè)間的信息交流。

        平臺管理員同樣可實(shí)現(xiàn)5大功能,各部分功能主模塊與企業(yè)管理員相同。數(shù)據(jù)中心增加了爬蟲功能,將爬取的網(wǎng)絡(luò)公開數(shù)據(jù)進(jìn)行清洗、匹配、去重和格式化后顯示。企業(yè)管理員可以增、刪、改、查平臺上的所有企業(yè)和用戶,同時對優(yōu)秀廠商進(jìn)行推薦,具備郵件管理功能。

        1.2 系統(tǒng)框架設(shè)計(jì)

        系統(tǒng)使用者權(quán)限不同,界面不同,可操作內(nèi)容也不同,為滿足不同用戶群體登錄后實(shí)現(xiàn)所需功能,系統(tǒng)框架采用MEAN設(shè)計(jì),采用Java語言實(shí)現(xiàn)。由于企業(yè)關(guān)系網(wǎng)絡(luò)一般由許多以制造商為核心的星形網(wǎng)絡(luò)構(gòu)成,交互密切,為了更好地表現(xiàn)企業(yè)與企業(yè)、企業(yè)與員工的關(guān)系,數(shù)據(jù)庫采用Neo4j圖數(shù)據(jù)庫。

        MEAN框架較為流行,它實(shí)現(xiàn)了MVC模式思想,將界面顯示和業(yè)務(wù)邏輯分離,利用模型化的開發(fā)思路優(yōu)化界面與服務(wù)關(guān)系,實(shí)現(xiàn)服務(wù)的復(fù)用性。可通過控制器分發(fā)業(yè)務(wù)邏輯,根據(jù)不同用戶顯示不同界面,實(shí)現(xiàn)不同功能。將界面和業(yè)務(wù)邏輯分離簡化了系統(tǒng)的后期維護(hù)。

        AngularJS是前端開發(fā)JS框架,克服了HTML在構(gòu)建動態(tài)網(wǎng)頁應(yīng)用上的不足,方便實(shí)現(xiàn)動態(tài)數(shù)據(jù)的顯示和處理[2]?;贛VC模式, HTML是視圖,JS是控制器,通過數(shù)據(jù)視圖雙向綁定方式實(shí)現(xiàn)動態(tài)數(shù)據(jù)處理,利用控制器實(shí)現(xiàn)服務(wù)處理。AngularJS通過bower安裝Bootstrap開源插件后,可方便實(shí)現(xiàn)html的前端顯示界面美化。Bootstrap是基于HTML、CSS、Javascript開發(fā)的,可適用多種設(shè)備,是快捷的Web前端開發(fā)框架。

        ExpressJS和Node.JS共同實(shí)現(xiàn)Web應(yīng)用服務(wù)器端開發(fā),通過http發(fā)出請求,對返回的JSON數(shù)據(jù)進(jìn)行分析處理,將結(jié)果傳回前端Angularjs控制器,實(shí)現(xiàn)頁面動態(tài)顯示。

        為了公開服務(wù)接口,利用JAX-RS簡化REST應(yīng)用實(shí)現(xiàn)服務(wù)處理?;贘AX-RS實(shí)現(xiàn)的框架應(yīng)用程序可以方便地部署到Tomcat上。

        根據(jù)平臺中用到的數(shù)據(jù)特性,將單一、無關(guān)系連接的信息存于MySQL數(shù)據(jù)庫,對存在關(guān)系的數(shù)據(jù)采用Neo4j數(shù)據(jù)庫存儲。Neo4j數(shù)據(jù)庫是非關(guān)系型數(shù)據(jù)庫,以圖的形式存儲數(shù)據(jù),又稱為節(jié)點(diǎn),每個節(jié)點(diǎn)具有各自的屬性,節(jié)點(diǎn)和節(jié)點(diǎn)之間可以建立關(guān)系,如職工節(jié)點(diǎn),它的屬性有姓名、地址、電話、郵箱、創(chuàng)建日期等屬性。企業(yè)節(jié)點(diǎn)有企業(yè)名稱、地址、商品、創(chuàng)建日期、郵箱、電話、傳真等,職工與企業(yè)建立歸屬關(guān)系。

        2 MEAN架構(gòu)下ENFORCE系統(tǒng)實(shí)現(xiàn)

        根據(jù)ENFORCE系統(tǒng)用戶特點(diǎn),考慮軟件代碼重用性,設(shè)計(jì)具有最小冗余的組織結(jié)構(gòu)。MVC模式是MEAN架構(gòu)中各層的主要實(shí)現(xiàn)模式,是基于請求——響應(yīng)模式的應(yīng)用方式。

        2.1 視圖層模式

        AngularJS框架實(shí)現(xiàn)了視圖層技術(shù),并利用HTML和JS實(shí)現(xiàn)數(shù)據(jù)的雙向綁定。為了解決中文亂碼問題,需要在html頭部加入語句,在對應(yīng)的js中則通過創(chuàng)建一個Module對象實(shí)例來實(shí)現(xiàn)數(shù)據(jù)與模型之間的數(shù)據(jù)綁定。

        2.2 業(yè)務(wù)處理層模式

        業(yè)務(wù)處理通過MEAN架構(gòu)中的node.js實(shí)現(xiàn),采用Express應(yīng)用框架,其中app.js文件是啟動文件,也就是Express執(zhí)行的入口文件,是一個總的路由接口。在app.js文件中,require用于加載express、path等模塊,以及routes路由文件夾下的所有js文件,通過app.use()實(shí)現(xiàn)路由控制。在具體的路由文件中,router.get(路由名, function(req,res,next){})生成一個路由實(shí)例來捕獲訪問主頁的GET請求,導(dǎo)出這個路由并在app.js中通過app.use()加載路由,當(dāng)訪問某個頁面時調(diào)用相應(yīng)的路由并將結(jié)果返回到瀏覽器。

        服務(wù)定位器:在ENFORCE系統(tǒng)中的routes文件夾下,所有的js文件由該系統(tǒng)的路由實(shí)現(xiàn)。routes文件夾由用戶創(chuàng)建,便于管理路由文件。Express封裝了多種http請求方式[3],常用的是get和post,app.get()和app.post(),一般有兩個參數(shù):①請求的路徑;②處理請求的回調(diào)函數(shù)?;卣{(diào)函數(shù)中的參數(shù)req和res,代表請求信息和響應(yīng)信息,通過處理req.query或req.params獲得前端傳遞進(jìn)來的數(shù)據(jù),對數(shù)據(jù)進(jìn)行封裝后通過http.request向后臺服務(wù)發(fā)出請求。此請求符合超文本傳輸協(xié)議,在回調(diào)函數(shù)中可以通過捕捉狀態(tài)碼,判斷處理返回的內(nèi)容。請求方法一般有GET、POST、PUT、DELETE,分別對應(yīng)資源中的查詢、修改、增加、刪除4個操作。HTTP與后臺交互時需傳遞URL地址,URL地址用于描述一個網(wǎng)絡(luò)資源。通過回調(diào)函數(shù)返回JSON格式數(shù)據(jù),并將其返回到前臺控制端,最終用于前臺數(shù)據(jù)顯示。

        服務(wù)處理:利用JAX-RS簡化REST服務(wù)開發(fā),REST服務(wù)基于HTTP協(xié)議[4]。通過JAX-RS標(biāo)注來實(shí)現(xiàn)相應(yīng)的Web資源,一個POJO java類封裝為Web資源,通過http請求中的GET、POST、PUT、DELETE動作,對應(yīng)于REST服務(wù)中的查詢資源、修改資源、增加資源、刪除資源。通過服務(wù)接口實(shí)現(xiàn)服務(wù)的重用性。@Path標(biāo)注資源或者方法的相對路徑,@Produces、@Consumes標(biāo)注方法支持或返回MIME類型[5]。

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

        根據(jù)數(shù)據(jù)交互性,系統(tǒng)采用Neo4j圖數(shù)據(jù)庫和MySQL關(guān)系型數(shù)據(jù)庫存儲數(shù)據(jù),利用關(guān)系數(shù)據(jù)庫存儲獨(dú)立性較強(qiáng)的數(shù)據(jù)。由于關(guān)系型數(shù)據(jù)庫不支持類似“主機(jī)廠的供應(yīng)商的供應(yīng)商”這種復(fù)雜數(shù)據(jù)庫查詢,所以對交互性、復(fù)雜性并且動態(tài)變化的數(shù)據(jù)利用圖數(shù)據(jù)庫進(jìn)行存儲。圖數(shù)據(jù)庫能夠高效存儲、管理、更新數(shù)據(jù)的內(nèi)在關(guān)系,并可進(jìn)行復(fù)雜的多層操作[6]。圖數(shù)據(jù)庫的基本要素是節(jié)點(diǎn)、屬性和關(guān)系[7]。節(jié)點(diǎn)代表實(shí)體且包含多個屬性,關(guān)系連接對應(yīng)的節(jié)點(diǎn),用于表達(dá)對象之間的關(guān)系。圖數(shù)據(jù)庫的連接操作只需要一個起始節(jié)點(diǎn)就可實(shí)現(xiàn)查詢功能。圖數(shù)據(jù)庫查詢語言是Cypher,它具有靈活性強(qiáng)、表達(dá)能力強(qiáng)的特點(diǎn),本系統(tǒng)中,企業(yè)與企業(yè)間的供應(yīng)關(guān)系、企業(yè)員工的隸屬關(guān)系、企業(yè)之間的多供應(yīng)商關(guān)系、產(chǎn)品的部件依屬關(guān)系、企業(yè)資質(zhì)等均采用圖數(shù)據(jù)庫存儲。

        如圖2所示,雙格上部為標(biāo)簽,下部為屬性,企業(yè)以名稱作為索引,員工以用戶登錄名為索引,并保證是唯一的。節(jié)點(diǎn)之間的關(guān)系以星形形式顯示。

        3 結(jié)語

        MEAN架構(gòu)將視圖表現(xiàn)層、控制層和模型層完全分離,利用JS和CSS完美結(jié)合,建立標(biāo)準(zhǔn)化的客戶端界面組件。通過控制層和模型層實(shí)現(xiàn)HTTP協(xié)議數(shù)據(jù)傳輸,將界面和邏輯處理分離,使用戶有更好的體驗(yàn)。通過封裝化的控制器簡化了程序員設(shè)計(jì)和處理邏輯工作量。

        參考文獻(xiàn):

        [1] 楊濤.企業(yè)社交網(wǎng)絡(luò)的理論及實(shí)踐研究[J].中國高新技術(shù)企業(yè),2015(17):162163.

        [2] 陳濤.基于AngularJS和Bootstrap聊天室的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識與技術(shù),2015(9):9192.

        [3] [美]ETHAN BROWN.Node與Express開發(fā)[M].北京:人民郵電出版社,2015.

        [4] 黃華東.Java環(huán)境下REST風(fēng)格Web服務(wù)的開發(fā)方法[J].科技信息,2008(15):6869.

        [5] 謝玉開.基于JAXRS的面向資源架構(gòu)應(yīng)用研究[D].杭州:浙江理工大學(xué),2011.

        [6] 王余藍(lán).圖形數(shù)據(jù)庫NEO4J與關(guān)系數(shù)據(jù)庫的比較研究[J].現(xiàn)代電子技術(shù),2012(20):7779.

        [7] 廖理.基于Neo4j圖數(shù)據(jù)庫的時空數(shù)據(jù)存儲[J].信息安全與技術(shù),2015(5):4345.

        (責(zé)任編輯:杜能鋼)

        国产午夜精品理论片| 人妻中文字幕一区二区视频| 日本视频二区在线观看| 精品久久久无码中字| 精品第一页| 人妻少妇无乱码中文字幕| 少妇人妻中文久久综合| 国内精品卡一卡二卡三 | 欧美日韩精品久久久久| 一二三四在线视频社区3| 国产高清女人对白av在在线| 国产传媒精品成人自拍| 日本高清视频永久网站www| 国产精品第一二三区久久蜜芽| 日韩AV无码乱伦丝袜一区| 少妇被爽到高潮喷水免费福利| 亚洲av综合av成人小说| 双腿张开被9个黑人调教影片| 国产小车还是日产的好| av免费不卡一区二区| 国产精品网站在线观看免费传媒| 国产亚洲精品看片在线观看| 亚洲综合免费在线视频| 亚洲av免费不卡在线观看| 真人新婚之夜破苞第一次视频| 国产精品视频一区日韩丝袜 | 日本色偷偷| 亚洲日本一区二区在线| 国产无遮挡又爽又刺激的视频老师| 91精品福利一区二区| 中文天堂一区二区三区| 国产福利一区二区三区在线视频| 国产国语熟妇视频在线观看| 亚洲中文一本无码AV在线无码| 青青草视频在线观看入口| 国产又爽又黄又刺激的视频| 狠狠色噜噜狠狠狠97影音先锋| 中文亚洲第一av一区二区| 亚洲av男人电影天堂热app| 无码熟熟妇丰满人妻啪啪| 视频网站在线观看不卡|