用JDBC来连接数据库,基本步骤都大同小异,只不过不同的数据库之间的URL有些不同。其基本步骤可分为以下几点:
1、加载相应数据库的JDBC驱动程序。
2、利用驱动管理器DriverManager获得连接Connection。
3、通过连接对象Connection获得Statement对象,以便于执行SQL语句。
4、结果以ResultSet类型返回,通过while循环遍历ResutlSet结果,直到ResultSet.next()为空时结束循环。
5、关闭Statement和Connection。
以下为实例Demo:
MySQL:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class MySQLDemo {
private Connection conn = null;
private Statement stmt = null;
private ResultSet rs = null;
private String driverclass="com.mysql.jdbc.Driver";
private String url="jdbc:mysql://localhost:3306/mydb";
private String user="root";
private String password="password";
public SQLServerTest() {
try {
Class.forName(driverclass).newInstance(); //加载驱动程序
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
System.out.println("class not found");
}
try {
conn = DriverManager.getConnection(url, user, password); //获得Connection对象
} catch (Exception e) {
System.out.println("Connect failed!");
}
}
public void selectMethod(String sql) {
System.out.println("id title");
try {
stmt = conn.createStatement(); //获得Statement对象
rs = stmt.executeQuery(sql); //执行SQL语句,并返回ResultSet类型的结果
while (rs.next()) {
String title = rs.getString("id");
String name = rs.getString("name");
System.out.println(title+" "+name);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void closeDB() throws SQLException {
if (rs != null)
rs.close();
if (stmt != null)
stmt.close(); //关闭Statement对象
if (conn != null) //关闭Connection对象
conn.close();
}
public static void main(String args[]) {
MySQLDemo demo = new MySQLDemo();
demo.selectMethod("select * from test");
}
}
Oracle和SQLServer的Demo程序与MySQL的类似,只是参数URL格式和Driver的名称不同,如下所示:
Oracle的URL格式和Dirver名称:
url="jdbc:oracle:thin:@127.0.0.1:1521:mydb"; //orcl为Oracle的实例名称
driverclass= "oracle.jdbc.driver.OracleDriver";
SQLServer的URL格式和Driver名称:
driverclass= "com.microsoft.sqlserver.jdbc.SQLServerDriver";
url = "jdbc:sqlserver://localhost:1433;databasename=mydb";
在URL中localhost即表示本地,也可以用127.0.0.1表示本地,localhost后面的数字表示数据库服务的端口,每个数据库都有本身默认的端口,如无特殊需要,在安装数据库软件的时候采用默认即可。在开发数据库应用时,与数据库相应的JDBC驱动程序是必须的。本文中所用的三个驱动程序可在网站上搜索下载,下载的时候注意选择版本。在运行程序的时候,一定要保证相应的数据库服务已经启动,否则程序无法连接数据库,会抛出Exception的。