日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

【Java】Java数据库访问体系重点总结

發布時間:2025/3/15 java 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Java】Java数据库访问体系重点总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 薦讀
  • JDBC體系
    • 關鍵的類或接口
    • java.sql
    • 加載驅動及連接數據庫
    • 執行語句
    • 結果集遍歷
    • PreparedStatement
  • 補充——JDBC連接SQLite數據庫

薦讀

  • 《MySQL命令行測試基礎SQL》
  • 《數據庫與SQL》
  • 《JDBC連接MySQL、SQLServer、Oracle三種數據庫》
  • 《JDBC連接MySQL驅動》

JDBC體系

JDBC:Java Database Connectivity

SQLite這種也是支持的,但Java8開始不支持ODBC了。

關鍵的類或接口

  • Connection 連接
  • Statement 語句 或 PreparedStatement
  • ResultSet 結果集 → 可以用 next() 方法來遍歷所有的記錄

java.sql

加載驅動及連接數據庫

加載驅動程序:

Class.forName("org.sqlite.JDBC");

得到與數據庫的連接 :

String connString = "jdbc:sqlite:d:/test3.db"; Connection conn = DriverManager.getConnection(connString);

執行語句

得到一個Statement對象 :

Statement stat = conn.createStatement();

執行非查詢:

stat.executeUpdate("delete from DemoTable;");

查詢數據庫得到記錄集:

ResultSet rs = stat.executeQuery("select * from people;");

結果集遍歷

System.out.println("Display all results:"); while(rs.next()) {int theInt= rs.getInt("test_id");String str = rs.getString("test_val");System.out.println("\ttest_id= " + theInt + "\tstr = " + str); }

PreparedStatement

PreparedStatement表示經過編譯的語句~

  • 如果多次使用同樣的語句,執行速度略快一些(聯想到native沒)
  • 可以方便地加上參數
  • 更安全,避免sql注入攻擊

補充——JDBC連接SQLite數據庫

import java.sql.*;public class JDBC4Sqlite {public static void main(String[] args) throws Exception {Class.forName("org.sqlite.JDBC");String connString = "jdbc:sqlite:d:/test3.db";Connection conn = DriverManager.getConnection(connString);conn.setAutoCommit(false);Statement stat = conn.createStatement();//stat.executeUpdate("drop table if exists people;");stat.executeUpdate("create table if not exists people (id char(10), name char(20), age int, gender bit ) ;");stat.executeUpdate("insert into people values ('001', 'Tom', 18, 1);");stat.executeUpdate("insert into people values ('002', 'Marry', 20, 0);");stat.executeUpdate("insert into people values ('003', 'Peter', 25, 1);");stat.executeUpdate("update people set age=age+1 whre id='003';");conn.commit();String sql = "select * from people;";ResultSet rs = stat.executeQuery(sql);while (rs.next()) {String name = rs.getString("name");int age = rs.getString("age");boolean gender = rs.getBoolean(4);System.out.printf("name = %s; occupation = %s\n",name, occupation);}rs.close();conn.close();} }

總結

以上是生活随笔為你收集整理的【Java】Java数据库访问体系重点总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。