La classe DepartmentDataTest montre comment accéder au tableau DEPARTMENT. Cette classe, qui a été générée par pureQuery, présente le style de programmation méthode annotée.
Vous pouvez créer une procédure mémorisée Java™ à partir de la méthode restructurée newAnnotStatic. L'instruction myPdqProperties.put("pdq.executionMode", "STATIC"); dans cette méthode provoquera l'exécution statique de la procédure mémorisée que vous créez à partir de cette méthode.
package ANNOTATED;
// Imports
import java.util.Iterator;
import pureQuery.example.SampleUtil;
import com.ibm.pdq.runtime.Data;
import com.ibm.pdq.runtime.ResultIterator;
import com.ibm.pdq.runtime.factory.DataFactory;
import java.sql.*;
public class DepartmentDataTest {
public static void newAnnotStatic(String[] s) throws SQLException,Exception {
Connection con = DriverManager.getConnection("jdbc:default:connection");
java.util.Properties myPdqProperties = new java.util.Properties();
myPdqProperties.put("pdq.executionMode", "STATIC");
DepartmentData d = DataFactory.getData(DepartmentData.class,
con,myPdqProperties);
Iterator<Department> departments = d.getDepartments();
if(departments.hasNext()){
Department dept = departments.next();
s[0] = dept.getDeptname();
}
}
/**
* @param args
*/
public static void main(String[] args) {
DepartmentData data = null;
try {
if (args.length < 1) {
SampleUtil.println("Tous les arguments requis n'ont pas été fournis.");
return;
}
data = SampleUtil.getData(
DepartmentData.class,
"jdbc:db2://iicriollo3.svl.ibm.com:50000/SAMPLE:retrieveMessagesFromServerOnGetMessage=true;",
"db2admin", args[0]);
((Data) data).setAutoCommit(false);
Iterator<Department> getDepartments = data.getDepartments();
Department bean = null;
if (getDepartments.hasNext()) {
bean = getDepartments.next();
((ResultIterator<Department>) getDepartments).close();
} else {
SampleUtil.println("L'ensemble de résultats est vide.");
((Data) data).rollback();
return;
}
getDepartments = data.getDepartments();
SampleUtil.println("Résultats pour getDepartments()");
SampleUtil.printAll(getDepartments);
Department getDepartment = null;
((Data) data).commit();
} catch (Exception exp) {
SampleUtil.println(exp.getMessage());
SampleUtil.println(exp.toString());
if (data != null)
((Data) data).rollback();
} finally {
if (data != null)
((Data) data).close();
}
}
}
}