您的位置:首页 > 其它

[JDBC成长记录]jdbc的基本流程

2014-10-26 17:27 155 查看
从今以后准备把自己学的知识总结到自己的博客,希望大家指出我的错误,让我也能和大家一起进步

0.0;


jdbc主要分为下面几个步奏,代码如下:

package statement;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

public class TestStatement {

public static void main(String[] args) {

//1.定义sql语句和一些对象

String sql = "select employee_id, department_id, salary from employees";

Connection conn = null;
Statement sm = null;

ResultSet rs = null;

try {

//2.加载驱动,会自动向DriverManager注册,运用反射机制,以后博客里会说

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

//3.拿到链接,DriverManager的静态方法

conn = DriverManager.getConnection(

"jdbc:oracle:thin:@127.0.0.1:1521:orcl", "scott", "tiger");

//4.创建Statement对象

sm = conn.createStatement();

//5.执行sql语句

rs = sm.executeQuery(sql);

while(rs.next()) {

System.out.print(rs.getString(1) + " ");

System.out.print(rs.getString(2) + " ");

System.out.print(rs.getInt(3));

System.out.println();

}

// System.out.println(conn);

} catch (Exception e) {

e.printStackTrace();

} finally {

try {

//6.关闭

if(rs != null) {

rs.close();

}

if(sm != null) {

sm.close();

}

if(conn != null) {

conn.close();

}

} catch(Exception e) {

e.printStackTrace();

}

}

}

}

注意:1:在默认情况下,同一时间每个
Statement
对象在只能打开一个
ResultSet
对象。因此,如果读取一
ResultSet
对象与读取另一个交叉,则这两个对象必须是由不同的
Statement
对象生成的。如果
存在某个语句的打开的当前
ResultSet
对象,则
Statement
接口中的所有执行方法都会隐式关闭
它。以后还会使用PreparedStatement类


2:注册驱动有几种方法,不过我感觉掌握住这一种就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: