IBM MobileFirst 7.0 - 适配器调用

IBM MobileFirst 7.0 - Adapter Invocation

我们可以一次发送多条记录到适配器,也可以将对象发送到适配器。 这是示例适配器代码:

var addStatement = WL.Server.createSQLStatement("insert into MSS (ENO,ENAME,ESALARY) values (?, ?, ?)");
function addSQLAdapterDemo(param0,param1,param2) {
return WL.Server.invokeSQLStatement({
    preparedStatement : addStatement,
    parameters : [param0,param1,param2]
});

}

Main.js 在客户端 javascript:

$('button#InsertData').on('click', function () {
  var invocationData = {
  adapter : 'SQLAdapterDemo', 
  procedure : 'addSQLAdapterDemo', 
  parameters : [5,'Raj',25000][6,'karan',25000],
  compressResponse: true
};
WL.Client.invokeProcedure(invocationData);

在上面的代码中,我传递了三个参数,我们可以这样发送数据吗?我们也可以将对象发送到适配器。该对象具有这三个参数。

你可以试试这个代码:

/*---------------------------------
Adapter Code
---------------------------------*/
var addStatement = WL.Server.createSQLStatement("insert into MSS (ENO,ENAME,ESALARY) values (?, ?, ?)");
function addSQLAdapterDemo(allRecords) {

var oneRecord;
for ( var count = 0; count < allRecords.length; count++ ){

    oneRecord = allRecords[count];
    WL.Server.invokeSQLStatement({preparedStatement : addStatement,parameters : [oneRecord.id,oneRecord.name,oneRecord.salary]});

}

/*---------------------------------
Client Code
---------------------------------*/
$('button#InsertData').on('click', function () {

/*Preparing JSON Array*/
    var allRecordJson = [];
    allRecordJson.push({"id":"5", "name" : "Raj", "salary" : "25000"});
    allRecordJson.push({"id":"6", "name" : "Karan", "salary" : "20000"});
/*JSON Array Builded*/

  var invocationData = {
  adapter : 'SQLAdapterDemo', 
  procedure : 'addSQLAdapterDemo', 
  parameters : [allRecordJson],
  compressResponse: true
};
WL.Client.invokeProcedure(invocationData);
}