您的位置:首页 > 数据库

JDBC连接数据库工具类及连接Access数据库示例

2012-01-19 16:21 507 查看
1、JDBC连接各个数据库时,存在很多相同的代码部分,把这些部分单独写在一个类里面,根据传入的driver、url、user、password这些参数连接到特定的数据库,工具类代码如下:

[java] view plaincopy

<span style="font-size:16px;">package mine.util.database;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.Statement;

/**

* 该工具类用于数据库连接,返回一个Statement对象,用户可以根据此对象执行sql语句获取结果

*/

public class DataBaseConnection {

public static final String ACCESS_DRIVER = "sun.jdbc.odbc.JdbcOdbcDriver";

public static final String MYSQL_DRIVER = "com.mysql.jdbc.Driver";

public static final String ORACLE_DRIVER = "oracle.jdbc.driver.OracleDriver";

public static final String SQLSERVER_DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

private Statement st = null;

private Connection connection = null;

public Statement getStatement(String driver, String url, String user,

String password) {

try {

// 1、加载驱动程序

Class.forName(driver);

// 2、通过url建立连接,连接到数据库

connection = DriverManager.getConnection(url, user, password);

// 3、创建语句,connection可以看出缆道,Statement可以看出缆车

st = connection.createStatement();

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

return st;

}

public void close() {

try {

if (st != null)

st.close();

if (connection != null)

connection.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

</span>

2、下面用JDBC-ODBC桥的方式连接Access数据库来测试一下这个工具类

首先,配置odbc源,如下所示:







数据源student.mdb中ST表信息如下



接下来就是写代码了,代码如下:

[java] view plaincopy

<span style="font-size:16px;">package demo.database;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import mine.util.database.DataBaseConnection;

/*

* 用工具类DataBaseConnection,连接Access数据库示例

*/

public class AccessDemo {

public void connect() {

DataBaseConnection dbConn = new DataBaseConnection();

//返回Statement对象

Statement st = dbConn.getStatement(DataBaseConnection.ACCESS_DRIVER,

"jdbc:odbc:Access", "", "");

ResultSet rs = null;

try {

// 执行sql语句

rs = st.executeQuery("select * from ST ");

// 获取结果集中的信息

while (rs.next()) {// 注意rs当前指向null,须先next()移动到指向第一条记录

System.out.println(rs.getString("Sno") + " "

+ rs.getString("Sname") + " " + rs.getString("Ssex")

+ " " + rs.getInt("Sage") + " "

+ rs.getString("Sdept"));

}

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

dbConn.close();

}

public static void main(String[] args) {

new AccessDemo().connect();

}

}

</span>

运行结果:



测试完毕

3、常用数据库url



4、数据库数据类型与对应的java数据类型

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐