JDBC学习小结
1. JDBC(Java Data Base Connectivity,java数据库连接) 它是sun公司提供的一系列类和接口,提供给各大数据库厂商实现!
2. 所谓 数据库驱动 是指数据库厂商实现JDBC的字节码打包成的jar文件。
3. 通过放射Class.forName(“com.mysql.jdbc.Driver”); 加载数据库驱动到JVM中时
Driver类中静态块代码将mysql的Driver() 教给java中的DriverManager管理。
所以,通过下面DriverManager.getConnection()或的数据库连接。
Mysql Driver 静态块源码如下:
static {
try {
java.sql.DriverManager.registerDriver(new Driver());
} catch (SQLException E) {
throw new RuntimeException("Can't register driver!");
}
}
- 数据库操作具体流程
//1.注册驱动
Class.forName("com.mysql.jdbc.Driver");
//2.获取数据库连接
String url = "jdbc:mysql://127.0.0.1:3366/数据库名称";
String user = "root";
String password = "111";
conn = DriverManager.getConnection(url, user, password);
//关闭事务的自动提交,开始事务
conn.setAutoCommit(false);
//3.定义SQL语句构架
String sql = "select job,ename,sal from emp_bak1 where job = ? for update";
//4.进行SQL语句的预编译
ps = conn.prepareStatement(sql);
//5.进行赋值
ps.setString(1, "MANAGER");
//6.执行SQL语句
rs = ps.executeQuery();
//7.处理查询结果集
while(rs.next()){
String job = rs.getString("job");
String ename = rs.getString("ename");
double sal = rs.getDouble("sal");
System.out.println(job + " " + ename + " " + sal);
}
//提交事务
conn.commit();
//遇到异常 事务回滚
Conn.rollback();
- 从properties文件中读取数据库信息返回数据库连接工具类
import java.io.*;
import java.sql.*;
import java.util.*;
/**
* JDBC 工具类 自动加载comm/JDBC.properties 文件中的内容
*
* @author
*
*/
public class JDBCUtil {
private static Connection conn = null;
public static Connection getConnection() {
FileReader fr = null;
Properties pro = null;
try {
// 从文件中读取数据库信息
fr = new FileReader("comm/JDBC.properties");
pro = new Properties();
pro.load(fr);
fr.close();
String Driver = pro.getProperty("Driver");
String url = pro.getProperty("url");
String user = pro.getProperty("user");
String password = pro.getProperty("password");
// 通过反射机制将驱动加载到JVM中
Class.forName(Driver);
// 通过DriverManager 返回数据库连接
conn = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
}
----------------------------------------------------------------------------------------------------------------------------------------------
Driver=com.mysql.jdbc.Driver
url =jdbc:mysql://localhost:3306/数据库名称
user =root
password=root