在基于MIDP的应用程序上使用JDBC
今天,Java平台已经成为大多数移动电话的首选并被广大的设备制造商,运营商和开发者所接受。基于J2ME的应用程序可以在多个平台上移植。DataMirror的PointBase微型版增强了用户访问存储数据的能力。
移动应用开发者经常需要构建需要持久性存储和读取数据的应用程序,在MIDP中提供了记录管理系统来支持上述操作。如果应用程序构建在标准的JDBC基础之上,那么访问和存储数据的操作将变得简单。本文将讨论如何在MIDP应用程序中使用JDBC,我们使用的产品是DataMirror的PointBase。
PointBase微型版是个纯Java的数据库,已经被移植到索尼爱立信P900和P910上。使用PointBase的UniSync你可以轻松的把本地数据库上的数据和企业数据库的数据进行同步,企业数据库可以是Oracle,SQL Server等。
PointBase通过实现了JBDC标准的子集来提供给J2ME开发者一个纯Java的数据解决方案。这样开发者可以轻松的把J2SE和J2EE应用扩展到J2ME平台。在使用PointBase之前,首先要把他们的类库引入到应用中。
import com.pointbase.me.*;
接下来你就可以使用标准的JDBC代码了,首先需要建立数据库连接:
Connection con = DriverManager.getConnection("jdbc:pointbase:micro:sample", "PBPUBLIC", "PBPUBLIC");
Con变量代表了数据库连接,使用它我们可以进行数据库的读写操作了。下面的代码演示了如何使用标准的JDBC来读取和写入数据。
向数据库中写入一行:
PreparedStatement prep = con.prepareStatement(
"INSERT INTO NameCard (ID, Name, Company, Title, "+
"Address1, Address2, Phone, Email) " +
"VALUES (?, ?, ?, ?, ?, ?, ?, ? )");
prep.setInt(1, id);
prep.setString(2, name);
prep.setString(3, company);
prep.setString(4, title);
prep.setString(5, address1);
prep.setString(6, address2);
prep.setString(7, phone);
prep.setString(8, email);
prep.execute();
读取数据:
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(
"SELECT name, company, title, address1, "+
"address2, phone, email "+
"FROM NameCard WHERE ID="+id);
得到rs后我们就可以使用rs.next()来从记录集中读取数据了。可见使用JDBC将可以提高应用程序的开发速度。
PointBase Micro MIDP控制台是在移动设备上访问MIDP数据库很方便的工具。