• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    數(shù)據(jù)訪問中間件在移動ERP協(xié)同辦公平臺的應(yīng)用研究

    2014-12-31 00:00:00劉素芳
    數(shù)字化用戶 2014年21期

    【摘 要】針對存在的移動ERP辦公業(yè)務(wù)需求,設(shè)計(jì)一種基于數(shù)據(jù)訪問中間件的移動ERP協(xié)同辦公系統(tǒng)平臺。

    【關(guān)鍵詞】數(shù)據(jù)訪問中間件;移動ERP;協(xié)同辦公; JSON

    本文設(shè)計(jì)一種基于數(shù)據(jù)訪問中間件的移動ERP協(xié)同辦公系統(tǒng)平臺。

    一、數(shù)據(jù)訪問中間件

    數(shù)據(jù)訪問中間件是位于應(yīng)用程序和數(shù)據(jù)庫之間的一類服務(wù)程序,主要用于實(shí)現(xiàn)應(yīng)用程序與本地或異地的同異構(gòu)數(shù)據(jù)源的數(shù)據(jù)交換,即屏蔽數(shù)據(jù)庫底層細(xì)節(jié)問題。

    考慮移動應(yīng)用開發(fā)的復(fù)雜性及移動終端系統(tǒng)與計(jì)算機(jī)集成的復(fù)雜性,本文選擇數(shù)據(jù)訪問中間件作為移動ERP與異地ERP數(shù)據(jù)庫進(jìn)行數(shù)據(jù)通信的橋梁。

    二、移動ERP協(xié)同辦公平臺框架設(shè)計(jì)

    本文設(shè)計(jì)的基于數(shù)據(jù)訪問中間件的移動ERP協(xié)同辦公平臺框架采用三層架構(gòu):移動客戶端、應(yīng)用服務(wù)器端和數(shù)據(jù)庫服務(wù)器端。中間件有多項(xiàng)實(shí)現(xiàn)技術(shù),其中Web服務(wù)技術(shù)是基于SOAP等技術(shù),使用的都是標(biāo)準(zhǔn)的協(xié)議,如HTTP、TCP/IP等,因此Web服務(wù)可以非常簡便的方式進(jìn)行遠(yuǎn)程傳輸。而J2EE是一個開放的、基于標(biāo)準(zhǔn)的開發(fā)和部署平臺,主要用于在服務(wù)器端開發(fā)可伸縮、可遷移、以數(shù)據(jù)庫為核心的企業(yè)級應(yīng)用[3]。因此本文設(shè)計(jì)基于Web服務(wù)的解決方案,采用J2EE開發(fā)移動ERP協(xié)同辦公平臺的數(shù)據(jù)訪問中間件。

    三、數(shù)據(jù)訪問中間件服務(wù)接口層設(shè)計(jì)

    (一)接收請求

    當(dāng)移動ERP客戶端通過HTTP協(xié)議發(fā)送數(shù)據(jù)請求時(shí),服務(wù)接口接收請求,并調(diào)用HttpServletRequest對象來獲取請求數(shù)據(jù)。

    (二)解析請求

    服務(wù)接口判斷請求的類型,若是查詢請求則生成相應(yīng)SELECT語句,調(diào)用數(shù)據(jù)處理層數(shù)據(jù)查詢類訪問ERP數(shù)據(jù)庫查詢數(shù)據(jù);若是操作請求則生成相應(yīng)的INSERT、UPDATE、DELETE語句,調(diào)用數(shù)據(jù)處理類操作ERP數(shù)據(jù)庫處理相應(yīng)業(yè)務(wù)請求。

    (三)數(shù)據(jù)格式轉(zhuǎn)換

    JSON是一種輕量級的數(shù)據(jù)交換格式,其數(shù)據(jù)量小可減少占用的帶寬,使跨平臺數(shù)據(jù)傳輸變得相對容易[4] 。數(shù)據(jù)格式轉(zhuǎn)換模塊負(fù)責(zé)將返回結(jié)果數(shù)據(jù)轉(zhuǎn)換為JSON格式,并返回給移動ERP終端。

    將ResultSet結(jié)果集轉(zhuǎn)化為JSON格式的關(guān)鍵代碼如下:

    // 定義JSON數(shù)組、對象

    JSONArray myArray = new JSONArray();

    JSONObject jsonObj = new JSONObject();

    // 使用ResultSetMetaData獲取列信息

    ResultSetMetaData metaData = rs.getMetaData();

    int colCount = metaData.getColumnCount();

    // 遍歷ResultSet中數(shù)據(jù)

    while (rs.next()) {

    // 遍歷每一列

    for (int i = 1; i <= colCount; i++) {

    String colName =metaData.getColumnLabel(i);

    String value = rs.getString(colName);

    jsonObj.put(colName, value); }

    myArray.put(jsonObj); }

    return myArray.toString();

    四、數(shù)據(jù)訪問中間件數(shù)據(jù)處理層設(shè)計(jì)

    采用ArrayList對象進(jìn)行封裝。

    1) 數(shù)據(jù)查詢

    DataMid類提供getResultSet方法查詢數(shù)據(jù),其關(guān)鍵代碼如下:

    //調(diào)用getConnection()方法連接指定數(shù)據(jù)庫

    Connection conn= getConnection();

    //實(shí)例化PreparedStatement對象,使用executeQuery()方法執(zhí)行select查詢并返回結(jié)果集

    PreparedStatement pstm=conn.prepareStatement(sql);

    if (paras != 1) {

    Object obj[] = paras.toArray();

    for (int i = 0; i < obj.length; i++) {

    if (obj[i] instanceof String) {

    pstm.setString(i+1, (String) obj[i]); }

    }

    }

    ResultSet rs = pstm.executeQuery();

    return rs;

    2) 數(shù)據(jù)處理

    DataMid類提供handleData方法處理數(shù)據(jù),其關(guān)鍵代碼如下:

    int n = 0;

    //調(diào)用getConnection()方法連接指定數(shù)據(jù)庫

    Connection conn= getConnection();

    //實(shí)例化PreparedStatement對象,使用executeUpdate ()方法執(zhí)行insert、update、delete語句

    PreparedStatement pstm=conn.prepareStatement(sql);

    if (paras != 1) {

    Object obj[] = paras.toArray();

    for (int i = 0; i < obj.length; i++) {

    if (obj[i] instanceof String) {

    pstm.setString(i+1, (String) obj[i]); }

    }

    }

    int n = pstm.executeUpdate();

    return n;

    五、結(jié)論

    實(shí)驗(yàn)證明本文設(shè)計(jì)的基于數(shù)據(jù)訪問中間件的移動ERP協(xié)同辦公平臺框架可以解決遠(yuǎn)程跨平臺移動ERP應(yīng)用程序與異構(gòu)或同構(gòu)數(shù)據(jù)源之間的通信問題,采用JSON格式交換數(shù)據(jù)有效解決了移動應(yīng)用受帶寬限制及網(wǎng)絡(luò)流量低的問題,為實(shí)現(xiàn)ERP協(xié)同辦公數(shù)據(jù)和信息的有效共享提供了一種行之有效的途徑,在一定程度上完善了移動ERP協(xié)同辦公系統(tǒng)的體系結(jié)構(gòu)。

    參考文獻(xiàn):

    [1]蔣曉丹,丁霞軍,張妞. 數(shù)據(jù)訪問中間件在移動學(xué)習(xí)平臺的研究與設(shè)計(jì).福建電腦,2013,29(2):22-23.

    [2]胡錦麗.一種基于json的modbus遠(yuǎn)程通信實(shí)現(xiàn)方式[J].機(jī)電技術(shù),2014,38(2):36-39.

    [3] 陳銳浩. 基于Android平臺的移動課件的設(shè)計(jì)及制作[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2013,30(3):55-58.

    基金項(xiàng)目:國家科技支撐計(jì)劃課題(2012BAF12B15)

    芦溪县| 黎平县| 青海省| 蒙山县| 武冈市| 清丰县| 东乡族自治县| 丰都县| 青冈县| 安仁县| 颍上县| 兴安县| 雷州市| 定远县| 灵石县| 锡林浩特市| 军事| 友谊县| 禹城市| 双峰县| 九江市| 湄潭县| 阳曲县| 遂昌县| 五峰| 新津县| 庆元县| 三河市| 法库县| 闻喜县| 舞钢市| 宕昌县| 武夷山市| 周宁县| 香港| 安阳市| 深州市| 龙泉市| 东安县| 平远县| 安平县|