jdbc的使用
jdbc –> java data base connectivity 译为java数据库连接,可为多种关系型数据库提供统一访问入口。(非关系型数据库的java连接方式,例如mangoDB等noSQL则采用其他的方式进行连接)此外,其他连接数据的方式例如,jdbc-odbc桥。区别在于jdbc-odbc桥需要使用sun.jdbc.odbc.JdbcOdbcDriver作为驱动类,同时需要配置OS数据源,在非windows环境中还需要安装odbc方可使用,使用起来算不上方便;jdbc-odbc桥访问数据库需要先访问odbc,再有odbc访问驱动,执行效率算不上高。因此,jdbc-odbc桥方式连接数据库在实际开发过程过程中并不常见。
jdbc连接数据库的步骤如下:
1. 加载数据库厂商提供的驱动。
2. 获取指定数据库、指定数据库用户的连接。
3. 通过获得的连接获取数据库连接申明。
4. 使用声明进行数据库访问,获得访问结果。
5. 依次关闭返回结果、访问申明、数据库连接。以下为代码实现:
import java.sql.*;
public class DBTest {
private String url ;
private String user;
private String password;
private Connection getCon(){
Connection con = null;
try{
Class.forName("com.mysql.jdbc.Driver");
url = "jdbc:mysql://localhost:3306/twork";
user = "root";
password = "root";
con = DriverManager.getConnection(url, user, password);
}catch (Exception e){
e.printStackTrace();
}
return con;
}
private Statement getStat(Connection con){
Statement state = null;
try{
state = con.createStatement();
}catch(Exception e){
e.printStackTrace();
}
return state;
}
private void select(){
Connection con = getCon();
Statement state = getStat(con);
ResultSet rs = null;
try{
rs = state.executeQuery("select * from bmb");
ResultSetMetaData rsmd = rs.getMetaData();
//打印库表所有字段
while(rs.next()){
for(int i = 1;i<= rsmd.getColumnCount() ;i++){
System.out.print(rs.getString(i)+" ");
}
System.out.println();
}
}
catch (Exception e){
e.printStackTrace();
}
finally {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
state.close();
} catch (Exception e){
}
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args){
DBTest test = new DBTest();
test.select();
}
}