JDBC连接数据库程序

时间:2024-05-30 22:38:02

  废话少说,看了尚学堂的视频以及某大神的博客,总结出以下.(本文以oracle数据库为例)

创建一个JDBC连接数据库的程序,需要着手做以下几件事情:

注意,这里边使用了java.sql.Statement; java.sql.connection;等包,为了方便这里直接使用了java.sql.*;

一.jdbc怎么识别不同数据库呢,例如oracle.mysql.等,

  找到相应数据库的jdbc的类库,不同的数据库针对jdbc做出了不同的类库.找到类库以后需要找到一个driver的驱动,这个驱动就是提供jdbc来连接数据库的,那么这个驱动在哪呢?

  JDBC连接数据库程序

没错,类库就是一个jar包.项目bulid path引进jar包.

  JDBC连接数据库程序JDBC连接数据库程序

然后看到该jar包下面有一个专门做驱动的类OracleDriver.class.

在要编写的JDBC连接数据的java类中引入此类:

  

Class.forName("oracle.jdbc.driver.OracleDriver");

//会抛出没有找到该类的异常,注意添加异常处理

  或者使用

new oracle.jdbc.driver,OracleDriver();

成功加载后,会将Driver类的实例注册到DriverManager类中。

二.连接数据库

向java.sql.DriverManager请求并获得Connection对象, 该对象就代表一个数据库的连接。
  

String url = "jdbc:oracle:thin:@192.168.104.210:1521/orcl";
String dbname = "shgbyp";
String dbpwd = "dreamsoft";
Connection conn = DriverManager.getConnection(url, dbname, dbpwd);

三.创建sql语句并执行sql语句

这里使用了java.sql.statement包;

首先创建一个statement语句

Statement stmt = conn.createStatement();

然后调用Statement对象,在Statement中有一个方法是用来执行sql语句的:

String sql ="select * from a01"
stmt.executeQuery(sql);

在这之后就又有问题了,只执行sql语句,那么我们也需要去的结果呀;

在来看操作手册中,关于executeQuery()方法有一个返回值类型:ResultSet(结果集类型)

ResultSet rs = stmt.executeQuery(sql);

现在好了,拿到了结果集,之后我们是不是需要循环遍历结果集从而拿到我们想要的结果呢?

同时把结果System.out.println();输出出来

while(rs.next()){
  //比如我们以string类型只拿腌a01表中的personcode
  String result = rs.getString("personcde"); 
System.out.println(result); }

这样的话,以上是不是就完善了呢?

千万记住,在每次新建资源后要记得释放资源,以及所有中的异常处理最好用try/catch来处理!

//遵守先建后关的资管规则
//记住代码的严谨性,判空,因为如果为空,代表之前没有新建资源,就不存在关闭资源这一说法!
if(rs != null){
  rs.close();
} if(stmt != null){   stmt.close();
}
if(conn != null){   conn.close();
}

 四.执行程序

  JDBC连接数据库程序

JDBC连接数据库程序

以上就ok啦,再接再厉!