JDBC示例代码
所有在此模板的例子中提到的步骤,将在本教程的后续章节说明。
创建jdbc应用程序:
有下列涉及构建jdbc应用程序的六个步骤:
-
导入数据包 . 需要包括含有需要进行数据库编程的jdbc类的包。大多数情况下,使用 import java.sql.* 就可以了.
-
注册jdbc驱动程序. 需要初始化驱动程序,可以与数据库打开一个通信通道。
-
打开连接. 需要使用drivermanager.getconnection() 方法创建一个connection对象,它代表与数据库的物理连接。
-
执行查询 . 需要使用类型声明的对象建立并提交一个sql语句到数据库。
-
从结果集中提取数据 . 要求使用适当的关于resultset.getxxx()方法来检索结果集的数据。
-
清理环境. 需要明确地关闭所有的数据库资源相对依靠jvm的垃圾收集。
示例代码:
这个范例的例子可以作为一个模板,在需要建立jdbc应用程序。
基于对环境和数据库安装在前面的章节中做此示例代码已写入。
复制下面的例子firstexample.java,编译并运行,如下所示:
//step 1. import required packages
import java.sql.*;
public class firstexample {
// jdbc driver name and database url
static final string jdbc_driver = "com.mysql.jdbc.driver";
static final string db_url = "jdbc:mysql://localhost/emp";
// database credentials
static final string user = "username";
static final string pass = "password";
public static void main(string[] args) {
connection conn = null;
statement stmt = null;
try{
//step 2: register jdbc driver
class.forname("com.mysql.jdbc.driver");
//step 3: open a connection
system.out.println("connecting to database...");
conn = drivermanager.getconnection(db_url,user,pass);
//step 4: execute a query
system.out.println("creating statement...");
stmt = conn.createstatement();
string sql;
sql = "select id, first, last, age from employees";
resultset rs = stmt.executequery(sql);
//step 5: extract data from result set
while(rs.next()){
//retrieve by column name
int id = rs.getint("id");
int age = rs.getint("age");
string first = rs.getstring("first");
string last = rs.getstring("last");
//display values
system.out.print("id: " + id);
system.out.print(", age: " + age);
system.out.print(", first: " + first);
system.out.println(", last: " + last);
}
//step 6: clean-up environment
rs.close();
stmt.close();
conn.close();
}catch(sqlexception se){
//handle errors for jdbc
se.printstacktrace();
}catch(exception e){
//handle errors for class.forname
e.printstacktrace();
}finally{
//finally block used to close resources
try{
if(stmt!=null)
stmt.close();
}catch(sqlexception se2){
}// nothing we can do
try{
if(conn!=null)
conn.close();
}catch(sqlexception se){
se.printstacktrace();
}//end finally try
}//end try
system.out.println("goodbye!");
}//end main
}//end firstexample
现在来编译上面的例子如下:
c:\>javac firstexample.java
c:\>
当运行firstexample,它会产生以下结果:
c:\>java firstexample
connecting to database...
creating statement...
id: 100, age: 18, first: zara, last: ali
id: 101, age: 25, first: mahnaz, last: fatma
id: 102, age: 30, first: zaid, last: khan
id: 103, age: 28, first: sumit, last: mittal
c:\>
上一篇: 解析数字签名的substring结构(获取数字签名时间)
下一篇: MYSQL锁表问题的解决方法