1. JDBC
java与数据库的连接:java database connectivity
-
角色分类
服务器 (db):接收 sql,执行 sql ,返回结果。 客户端 (java):接收数据,组装sql,发送SQL(与数据库建立联系) ,分析结果。
-
面向接口编程
oracle 厂商实现接口 (jar)(视安装路径而定): D:\app\Administrator\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6.jar
-
JDBC基本流程
1.加载驱动(选择数据库)。 Class.forName("oracle.jdbc.driver.OracleDriver"); 2.获取连接(与数据库建立连接)。 Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","SCOTT ","TIGER"); 3.准备SQL。 4.构建处理块(封装发送SQL)。 5.发送SQL,得到结果。 6.处理结果。 7.连接关闭。
-
JDBC封装工具类
步骤: 1.创建静态文件。 2.加载流。 3.加载驱动。 4.获取连接。 5.资源关闭。
-
JDBC基本流程优化
1.异常的捕获。 2.软编码方式定义数据库的参数信息。
-
静态处理块Statement
创建:连接.Connection.createStatement() 特点: 处理不变的静态的sql语句。 优点: 直接查看sql,方便处理错误。 缺点: 性能不高,拼接sql麻烦,可能存在sql注入。
-
预处理块PreparedStatement
创建:连接.prepareStatement(sql) 特点:处理不变的静态的sql语句|可变的sql语句带?的sql。 优点: 1.预先编译,提高效率。 2.防止SQL注入: sql语句不是通过字符串的连接符直接拼接,而是通过预处理块内部拼接,拼接之前检查传入的数据。 缺点: 不能直接打印sql语句,不方便处理错误。 注意: 建议使用预处理块代替静态处理块。
-
释放资源
原则:先打开的后关闭。 顺序:结果集->处理块->连接。