pureQuery内联办法气势简介[Java编程]
本文“pureQuery内联办法气势简介[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
IBM® pureQuery 是一种高性能 Java™ 数据拜候平台,其目标主如果简化数据拜候利用程序的开辟和管理.它由工具、API 和运行时构成.pureQuery 引入了两种编程气势,以帮忙用户通过简单但是强盛的 API 拜候数据库.本文介绍此中的一种气势,即内联办法编程气势,并谈论若何利用它有效地查询和更新数据库.本文还摸索利用内联办法编程气势的一些长处和关键特点.
简介
pureQuery 为 SQL 履行引入了两种编程气势:内联办法编程气势和带注释的办法编程气势.这些编程气势为存储和检索对象(比方 Java bean 和 map)提高了现成的支持,从而简化了 Java 数据拜候开辟.内联编程气势还支持利用定制的用户定义的后果处理.
带注释的办法气势供应一种基于注释的数据拜候办法.在带注释的办法气势中,SQL/XQUERY 字符串是在一个 pureQuery 注释(Annotation)中定义的.这些注释被放在用户定义接口中的办法声明上.代码生成器对接口举行预处理,生成每个带注释的办法的实现代码.生成的实现代码利用 pureQuery 运行时履行注释中定义的 SQL 语句.要理解关于带注释的办法气势的更多信息,请参阅本系列的 第 1 部份 或 pureQuery 文档.
pureQuery 内联编程气势的目的是削减利用 JDBC 查询或更新数据库经常见的一些反复任务.内联办法气势引入了一组定义杰出的、有效的 API,它们比 JDBC 更简单,更易于利用.在内联气势中,可以在代码中像 Java String 对象一样 “内联” 地成立 SQL/XQUERY 语句.这种动态生成的语句被作为 String 参数传送给 pureQuery Data 接口办法.内联气势利用 JDBC 最佳实践,并操纵特定于数据库的 API 来提高性能.内联办法气势的一个例子是利用批量更新和改良的后果集处理.在带注释的办法气势中,SQL 必须在编译时定义,而内联办法例差别,它支持在运行时动态成立和履行 SQL 语句.在利用程序中,SQL 是 “内联” 和可见的,因此更简单发现错误并做出改正.内联气势还有一个可插入式定制后果处理,用于轻松地映射数据库列.
表 1 中的代码片段演示了内联办法气势的简单性和易用性.
表 1. JDBC 与 pureQuery 内联气势之间的代码对比
JDBC
try {
//SQL for insert
String sqlins="'insert into CUSTOMER ("
+ "NAME, COUNTRY, STREET, CITY, PROVINCE, ZIP,"
+ "PHONE,INFO)"
+ "values( ?, ?, ?, ?, ?, ?, ?, ?)";
//prepare the INSERT statement
PreparedStatement pstmt =
con.prepareStatement(sqlins );
// setup parameters
pstmt.setString (1, "custName");
pstmt.setString (2, "custCountry");
pstmt.setString (3, "custStreet");
pstmt.setString (4, "custCity");
pstmt.setString (5, "custProvince");
pstmt.setString (6, "custZip");
pstmt.setString (7, "custPhone");
pstmt.setString (8, "custInfo");
//execute the INSERT statement
pstmt.execute();
//close the prepared statement
pstmt.close();
// SQL for SELECT
String sqlSel = "select Name, Country, Street, "
+ "Province,Zip from CUSTOMER where Customer = ?";
//prepare the SELECT statement
pstmt = con.prepareStatement(sqlSel);
//set the Input parameter
pstmt.setString (1, "custCountry");
//execute SELECT statement
pstmt.execute();
//get the results and set values in Customer Bean
ResultSet result = pstmt.getResultSet ();
List<Customer> custList =
new ArrayList<Customer>();
while (result.next ()) {
Customer cust = new Customer();
cust.name = result.getString (1);
cust.country = result.getString (2);
cust.street = result.getString (3);
cust.province = result.getString (4);
cust.zip = result.getString (5);
custList.add (cust);
}
}
catch (SQLException e) {
e.pringStackTrace ();
}
以上是“pureQuery内联办法气势简介[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |