国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 基礎知識 > 正文

JDBC 技術詳解1

2024-09-12 20:30:18
字體:
來源:轉載
供稿:網友
  jdbc是數據庫中十分重要的一項技術,是我們在做項目最常用的一類接口實現類,
 
  這里就個朋友們簡單詳細的聊一下。
 
  首先我們應該知道什么是jdbc
 
  JDBC(JavaDataBaseConnectivity)java 數據庫連接 , 是 JavaEE 平臺下的技術規范 ,定義了在 Java 語言中連接數據,執行 SQL 語句的標準 , 可以為多種關系數據庫提供統一訪問。
 
  但想要訪問數據庫就必須使用數據庫驅動,
 
  那么什么是數據庫驅動呢?
 
  數據庫廠商對 JDBC 規范的具體實現 ,不同數據產品的數據庫驅動名字有差異 ,在程序中需要依賴數據庫驅動來完成對數據庫的操作。
 
  JDBC 技術詳解1
 
  我們現在使用的是JDBC3.0 標準
 
  其中常用的接口有
 
  1 Driver 接口
 
  Driver 接口的作用是來定義數據庫驅動對象應該具備的一些能力。比如與數據庫建立連 接的方法的定義所有支持 java 語言連接的數據庫都實現了該接口,實現該接口的類我們稱 之為數據庫驅動類。在程序中要連接數據庫,必須先通過 JDK 的反射機制加載數據庫驅動 類,將其實例化。不同的數據庫驅動類的類名有區別。 加載 MySql 驅動:Class.forName("com.mysql.jdbc.Driver"); 加載 Oracle 驅動:Class.forName("oracle.jdbc.driver.OracleDriver");
 
  DriverManager 類
 
  DriverManager
 
  通過實例化的數據庫驅動對象,能夠建立應用程序與數據庫之間建立連 接。并返回 Connection 接口類型的數據庫連接對象。
 
  常用方法
 
  •getConnection(StringjdbcUrl,Stringuser,Stringpassword)
 
  該方法通過訪問數據庫的 url、用戶以及密碼,返回對應的數據庫的 Connection 對象。
 
  JDBCURL
 
  與數據庫連接時,用來連接到指定數據庫標識符。在 URL 中包括了該數據庫的類型、 地址、端口、庫名稱等信息。不同品牌數據庫的連接 URL 不同。
 
  Connection 接口
 
  Connection 與數據庫的連接(會話)對象。我們可以通過該對象執行 sql 語句并返回結
 
  果。
 
  連接 MySql 數據庫: Connection conn = DriverManager.getConnection("jdbc:mysql://host:port/database", "user", "password"); 連接 Oracle 數據庫:
 
  Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@host:port:database", "user","password"); 連接 SqlServer 數據庫: Connection conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://host:port; DatabaseName=database","user","password");
 
  常用方法
 
  •createStatement():創建向數據庫發送 sql 的 Statement 接口類型的對象。
 
  •preparedStatement(sql) :創建向數據庫發送預編譯 sql 的 PrepareSatement 接口類型的
 
  對象。
 
  •prepareCall(sql):創建執行存儲過程的 CallableStatement 接口類型的對象。
 
  •setAutoCommit(booleanautoCommit):設置事務是否自動提交。 •commit() :在鏈接上提交事務。
 
  •rollback() :在此鏈接上回滾事務。
 
  Statement 接口
 
  用于執行靜態 SQL 語句并返回它所生成結果的對象。 由 createStatement 創建,用于發送簡單的 SQL 語句(不支持動態綁定)。
 
  常用方法
 
  •execute(String sql):執行參數中的 SQL,返回是否有結果集。 •executeQuery(Stringsql):運行 select 語句,返回 ResultSet 結果集。 •executeUpdate(Stringsql):運行 insert/update/delete 操作,返回更新的行數。
 
  •addBatch(Stringsql) :把多條 sql 語句放到一個批處理中。 •executeBatch():向數據庫發送一批 sql 語句執行。
 
  PreparedStatement 接口
 
  繼承自 Statement 接口,由 preparedStatement 創建,用于發送含有一個或多個參數的 SQL 語句。PreparedStatement 對象比 Statement 對象的效率更高,并且可以防止 SQL 注入,所以 我們一般都使用 PreparedStatement。
 
  常用方法
 
  •addBatch()把當前 sql 語句加入到一個批處理中。
 
  •execute() 執行當前 SQL,返回個 boolean 值
 
  •executeUpdate()運行 insert/update/delete 操作,返回更新的行數。
 
  •executeQuery() 執行當前的查詢,返回一個結果集對象
 
  •setDate(intparameterIndex,Date x)向當前SQL語句中的指定位置綁定一個java.sql.Date
 
  值。
 
  • setDouble(int parameterIndex, double x)向當前 SQL 語句中的指定位置綁定一個 double
 
  值
 
  •setFloat(intparameterIndex,floatx)向當前 SQL 語句中的指定位置綁定一個 float 值
 
  •setInt(intparameterIndex,intx)向當前 SQL 語句中的指定位置綁定一個 int 值
 
  •setString(intparameterIndex,Stringx)向當前 SQL 語句中的指定位置綁定一個 String 值
 
  ResultSet 接口
 
  ResultSet 提供檢索不同類型字段的方法。
 
  常用方法
 
  •getString(intindex)、getString(StringcolumnName) 獲得在數據庫里是 varchar、char 等類型的數據對象。 •getFloat(intindex)、getFloat(StringcolumnName) 獲得在數據庫里是 Float 類型的數據對象。 •getDate(intindex)、getDate(StringcolumnName) 獲得在數據庫里是 Date 類型的數據。
 
  •getBoolean(intindex)、getBoolean(StringcolumnName) 獲得在數據庫里是 Boolean 類型的數據。
 
  •getObject(intindex)、getObject(StringcolumnName) 獲取在數據庫里任意類型的數據。
 
  ResultSet 對結果集進行滾動的方法
 
  •next():移動到下一行。
 
  •Previous():移動到前一行。
 
  •absolute(introw):移動到指定行。
 
  •beforeFirst():移動 resultSet 的最前面。
 
  •afterLast() :移動到 resultSet 的最后面。
 
  CallableStatement 接口
 
  繼承自 PreparedStatement 接口,由方法 prepareCall 創建,用于調用數據庫的存儲過程。
 

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安龙县| 金堂县| 永定县| 额济纳旗| 西昌市| 盘山县| 乌鲁木齐市| 肥城市| 娄底市| 泗洪县| 安塞县| 宿迁市| 赤水市| 道真| 佛教| 巴林左旗| 佛山市| 航空| 石泉县| 临沂市| 昔阳县| 古交市| 久治县| 琼结县| 正蓝旗| 岚皋县| 海兴县| 沛县| 万州区| 龙里县| 新巴尔虎左旗| 赣州市| 壤塘县| 德格县| 清丰县| 五河县| 安塞县| 青浦区| 收藏| 永和县| 五常市|