Cordys BOP 4平臺開發入門實戰演練——Webservices開發(使用MongoDB資料庫)

肖永威發表於2015-04-08

1、在WS-AppServer Package中新建自定義類“C_MongoPackage”



2、新增自定義方法Method,expandDocument和findDocuments兩個方法。


3、方法設定兩個引數,分別是collectionName和JSONString。


4、由系統產生Java程式碼


5、彈出如下“Generate Java Code on WS-AppServer Models”視窗。


6、由系統生產WebService


7、彈出Generate WebService Interface on WS-AppServer Models視窗。


接下來,分別釋出Java程式碼和WebService。


8、上傳MongoDB Java Driver包到系統上平臺上。


9、新增Java程式依賴Jar包,滑鼠雙擊Java檔案下的“XiaoywWSAppServerPackage”包,彈出“WS-AppServer Java Archive Definiton”視窗,在“Dependencies”頁面,通過“+”增加Jar包。此Jar包選自JARLIB裡的mogo-java-driver-2.12.4.jar檔案。


10、把系統生成Java程式碼上傳SVN。


11、同步程式碼到Eclipse工程中。


12、在Eclipse中,完善如下程式碼

package com.unicom.xiaoywwsappserverpackage;

import com.cordys.cpc.bsf.busobject.BusObjectConfig;

import com.cordys.cpc.bsf.busobject.BusObjectIterator;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBObject;
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.util.JSON;


public class C_MongoPackage extends C_MongoPackageBase

{

......

//輸入引數,collectionName:文件名稱, JSONString:MongoDB所識別JSON資料格式資料字串

    public static void expandDocument(String collectionName, String JSONString)
    {
        DB db = null;  


        try {  
             MongoClientURI uri = new MongoClientURI("mongodb://username:password@10.64.52.120:27017/dbname");

//username:資料庫使用者名稱、 password:密碼、   dbname:資料庫名稱


             MongoClient client =  new MongoClient(uri);      

             db = client.getDB(dbname);

             DBCollection collection = db.getCollection(collectionName);
             
             DBObject query = (BasicDBObject) JSON.parse(JSONString);
             
             collection.save(query);
        } catch (Exception e) {  
            e.printStackTrace();  
        } finally{
        if (db!=null){
        try{
                db.requestDone();
                db=null;
        }catch(Exception e) {  
 
                    e.printStackTrace();  
       
        }
        }
        }
        
    }

13、在Eclipse中,通過Team->提交帶回到平臺中,再“Java - Publish to Organization”,編譯釋出程式碼到平臺中使用。

14、測試介面如下:


<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP:Body>
    <ExpandDocument xmlns="http://schemas.cordys.com/XiaoywWSAppServerPackage" preserveSpace="no" qAccess="0" qValues="">
      <collectionName>BusinessEntity</collectionName>
      <JSONString>{"ID":"2015040010","Name":"採購流程","Dept":"經營管理部"}</JSONString>
    </ExpandDocument>
  </SOAP:Body>
</SOAP:Envelope>

15、資料庫插入結果如下所示:



相關文章