一、jdbc概述
1、原理jdbc就是用java代码操作数据库的一门技术。早期sun公司的程序员想编写一套可以连接所有数据库的 API,但数据库之间的差异太大,无法实现。后来sun公司与数据库厂商商量决定,由sun公司提供一套访问数拥库的接口,数据库厂商按照接口规范提供一套访问自己数据库的APi,这套API就是数据库驱动。程序员不用关心驱动的实现,只需要面向sun公司提供的jdbc接口编程.
2、驱动和URL
oracle驱动: oracle.jdbc.driver.OracleDriver
URL: jdbc:oracle:thin:@127.0.0.1:1521:orc1
mysql驱动: com.mysql.jdbc.Driver
URL: jdbc:mysql://localhost: 3306/briupdb
还可以在ur1中提供参数:
dbc: mysql://localhost: 3306/mydb1 ?useUnicode=true&characterEncoding=UTF8
useUnicode参数指定这个连接数据库的过程中,使用的字节集是Unicode字节集;
characherEncoding参数指定穿上连接数据库的过程中,使用的字节集编码为UTF-8编码。
二、jdbc常用对象
1.Driver接口每个驱动必须实现的接口,
常用方法:
Connection connect(String url, Properties info);获取数据库链接
2. DriverManager类
管理一组jdbc驱动常用方法static void registerDriver (Driver driver);
注册驱动static Connection getConnection(string url, string user, string password);
获取链接3, Connection接口表示与特定数据库的一次会话
常用方法
statement createstatement();创建一个statement对象
Preparedstatement preparestatement(String sql);创建一个PreparedStatement对象
Callablestatement preparecall (string sql);创建一个Callablestatement对象
void setAutoCommit(boolean autoCommit);设置提交方式
void commit();提交结束事务,须关闭自动提交
void rollback();回滚结束事务
void rollback(Savepoint savepoint);回滚到指定保存点
void releasesavepoint(Savepoint savepoint);关闭保存点
void close();关闭会话
获取Connection对象
方式一:直接实例化驱动,通过驱动得到链接对象
public void test1() throws Exception{
Driver driver =new com.mysql. jdbc.Driver();
//数据库地址
string url ="jdbc:mysql://localhost:3306/exam".
Properties prop = new Properties();
prop. setProperty ("user", "root");
prop. setProperty ("password", "root");
Connection con = driver.connect(url, prop);
}
方式二:使用DriverManager注册驱动,再获取连接
public void test2(
throws Exceptiontstring url ="jdbc:mysql://localhost: 3306/exam".
string user = "root";string password = "root";
Driver driver = new com.mysql.jdbc.Driver ();
DriverManager.registerDriver(driver);
Connection conn =DriverManager.
getConnection(url, user, password);
System.out.println(conn);
}
方式三:加载驱动,即可完成注册
public void test2() throws Exceptiont{
string url ="jdbc:mysql://localhost:3306/exam".
string user = "root";
string password = "root";
Calss.forName ("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, user, password);
System.out.println(conn).
}