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