新手Java學習路線乾貨教材 《Java Web開發實戰》
一年一度畢業季,又到了簡歷、offer漫天飛,失望與希望並存的時節。在IT行業,高校畢業生求職時,面臨的第一道門檻就是技能與經驗的考驗,但學校往往更注重學生的理論知識,忽略了對學生實踐能力的培養,因而導致很多求職者在面試中敗下陣來。在畢業生所學知識普遍脫離職場實戰的大趨勢下,《Java Web開發實戰》應運而生,此教材由千鋒教研院高教產品研發部編著、清華大學出版社出版,將理論應用於實踐,切實提高學生的實戰能力。
下面給大家分享點本書的乾貨內容,關於JDBC內容繼續給大家學習,想要完整資料的可以銜接檢視之前的文章。
據庫可以是不相同的。
1.1.1 JDBC的常用API
JDBC定義了一系列運算元據庫的介面和類,這些介面和類位於java.sql包中。接下來,本節將詳細介紹JDBC的常用API。
1. Driver介面
Driver介面是所有JDBC驅動程式必須要實現的介面,該介面提供給資料庫廠商使用。在編寫JDBC程式時,必須先裝載特定資料庫廠商的驅動程式,裝載驅動程式透過java.lang.Class類中的靜態方法forName()實現。
2. DriverManager類
DriverManager類用於載入JDBC驅動並建立與資料庫的連線,DriverManager類的常用方法,具體如表1.1所示。
表1.1 DriverManager的常用方法
方法名稱
功能描述
registerDriver(Driver driver)
註冊資料庫的驅動程式
getConnection (String url,String user,String password)
獲取資料庫連線
3. Connection介面
Connection介面表示Java程式和資料庫的連線,Java程式和資料庫的互動是透過Connection介面來完成的。Connection介面的常用方法,具體如表1.2所示。
表1.2 Connection介面的常用方法
方法名稱
功能描述
createStatement()
建立向資料庫傳送sql的Statement物件
prepareStatement(String sql)
建立向資料庫傳送預編譯sql的PrepareSatement物件
prepareCall(String sql)
建立執行儲存過程的CallableStatement物件
4. Statement介面
Statement介面用於向資料庫傳送SQL語句,Statement介面提供了三個執行SQL語句的方法,具體如表1.3所示。
表1.3 Statement介面的方法
方法名稱
功能描述
execute(String sql)
執行語句,返回是否有結果集
executeQuery(String sql)
執行select語句,返回ResultSet結果集
executeUpdate(String sql)
執行insert/update/delete操作,返回更新的行數
5. PreparedStatement介面
繼承自Statement介面,用於執行預編譯的SQL語句,PreparedStatement介面提供了一些對資料庫進行基本操作的方法,具體如表1.4所示。
表1.4 PreparedStatement介面的方法
方法名稱
功能描述
executeQuery(String sql)
執行select語句,返回ResultSet結果集
executeUpdate(String sql)
執行insert/update/delete操作,返回更新的行數
addBatch(String sql)
把多條sql語句放到一個批處理中
executeBatch()
向資料庫傳送一批sql語句執行
6. CallableStatement介面
繼承自PreparedStatement介面,由方法prepareCall()建立,用於呼叫SQL儲存過程。CallableStatement介面提供了一些對資料庫進行基本操作的方法,具體如表1.5所示。
表1.5 CallableStatement介面的方法
方法名稱
功能描述
wasNull()
查詢最後一個讀取的OUT引數是否為SQL型別的Null值
setNull(String parameterName,int sqlType)
將指定引數設定為SQL型別的NULL
getInt(int parameterIndex )
以Java語言中int值的形式獲取資料庫中Integer型別引數的值
setString(String parameterName,String x)
將指定引數設定為給定的Java型別的String值
registerOutParameter(int parameterIndex, int sqlType)
按順序位置parameterIndex將OUT引數註冊為SQL型別
7. ResultSet介面
ResultSet介面表示執行select查詢語句獲得的結果集,該結果集採用邏輯表格的形式封裝。ResultSet介面中提供了一系列操作結果集的方法,具體如表1.6所示。
表1.6 ResultSet介面的方法
方法名稱
功能描述
getString(int index)、getString(String columnName)
獲得在資料庫裡是varchar、char等型別的資料物件
getFloat(int index)、getFloat(String columnName)
獲得在資料庫裡是Float型別的資料物件
getDate(int index)、getDate(String columnName)
獲得在資料庫裡是Date型別的資料
getBoolean(int index) 、
getBoolean(String columnName)
獲得在資料庫裡是Boolean型別的資料
getObject(int index)、getObject(String columnName)
向資料庫傳送一批sql語句執行
next()
移動到下一行
previous()
移動到前一行
absolute(int row)
移動到指定行
beforeFirst()
移動resultSet的最前面
afterLast()
移動到resultSet的最後面
ResultSet物件維護了一個指向表格資料行的指標,指標預設在第一行之前,呼叫next()或previous()等移動指標的方法,可以使指標指向具體的資料行,進而呼叫getObject()方法獲取指定的查詢結果。
8. ResultSetMetaData介面
ResultSetMetaData介面用於獲取關於ResultSet 物件中列的型別和屬性資訊的物件。ResultSetMetaData介面的常用方法,具體如表1.7所示。
表1.7 ResultSetMetaData介面的常用方法
方法名稱
功能描述
getColumCount()
返回所有欄位的數目
getColumName(int colum)
根據欄位的索引值取得欄位的名稱
getColumType (int colum)
根據欄位的索引值取得欄位的型別
1.1.2 JDBC URL
JDBC URL提供了一種標識資料庫的方法,它可以使JDBC程式識別指定的資料庫並與之建立連線。大家在編寫JDBC程式時, 無需關注JDBC URL的形成過程,只需使用與所用的資料庫一起提供的URL即可。
JDBC URL的標準語法如圖1.4所示(以MySQL為例)。
圖1.1 JDBC URL的標準語法
從圖1.4中可以看到,JDBC URL由協議、子協議、主機埠、資料庫名稱、引數等組成。其中,JDBC URL中的協議總是jdbc,子協議因資料庫廠商的不同而有所差異,在本例中為mysql,主機為資料庫所在主機地址,埠為MySQL資料庫的預設埠號3306,引數多為連線屬性的配置資訊,包括資料庫的使用者名稱、密碼、編碼、套接字連線的超時等,JDBC URL的常用引數如表1.8所示。
表1.8 JDBC URL的常用引數
引數型別
引數名稱
user
資料庫使用者名稱,用於連線資料庫
password
使用者密碼,用於連線資料庫
useUnicode
是否使用Unicode字符集,如果引數characterEncoding設定為gb2312或gbk,本引數值必須設定為true
characterEncoding
當useUnicode設定為true時,指定字元編碼。比如可設定為gb2312、gbk、utf8
autoReconnect
當資料庫連線異常中斷時,是否自動重新連線
autoReconnectForPools
是否使用針對資料庫連線池的重連策略
failOverReadOnly
自動重連成功後,連線是否設定為只讀
maxReconnectsautoReconnect
重試連線的次數
initialTimeoutautoReconnect
兩次重連之間的時間間隔,單位:秒
connectTimeout
和資料庫伺服器建立socket連線時的超時,單位:毫秒。 0表示永不超時,適用於JDK 1.4及更高版本
socketTimeoutsocket
操作(讀寫)超時,單位:毫秒。 0表示永不超時
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69916964/viewspace-2651373/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 資深Java工程師推薦新手乾貨教材 《Java Web開發實戰》Java工程師Web
- web前端就業開發學習路線(乾貨)Web前端就業
- Java後端學習路線乾貨分享Java後端
- Java Web 學習路線JavaWeb
- Java新手入門學習路線圖Java
- Java新手學習路線,0基礎學習Java怎樣效率更高?Java
- web前端學習路線以及需要學習的課程,實用乾貨秒存Web前端
- 新手java如何自學,java大神的自學路線Java
- JAVA學習路線Java
- Web前端開發學習路線圖Web前端
- 新手錦囊:Web前端開發小白的學習建議和路線圖Web前端
- Java學習路線指南Java
- Java-學習路線Java
- Java 學習路線圖Java
- web前端學習路線-20個真實web開發專案集合Web前端
- 【java乾貨】10個堪稱神器的 Java 學習網站Java學習網站
- Java/後端學習路線Java後端
- Java後端學習路線Java後端
- Java學習路線·進階Java
- Java學習路線·入門Java
- 《Java Web開發實戰》Java工程師推薦的進階之路JavaWeb工程師
- 乾貨|淺談強化學習的方法及學習路線強化學習
- 適合普通大學生的 Java 後端開發學習路線Java後端
- Java學習過程中實戰開發經驗重要嗎?Java
- java8實戰學習Java
- web前端開發怎麼樣學習?看這份web前端學習路線Web前端
- 給學妹的 Java 學習路線Java
- Java進階學習之Java架構師的學習路線Java架構
- JAVA學習筆記—JAVA WEB(二)JAVA WEB核心(下)Java筆記Web
- 乾貨 | 學習大資料為什麼要先學Java?大資料Java
- 學習嵌入式的開發線路,新手怎麼學習嵌入式?
- Java新手學習Java專案打日誌Java
- Day04——Java新手學習Java
- Day07——Java新手學習Java
- 新手應該如何學習JAVAJava
- Day02——Java新手學習Java
- 好程式設計師Java學習路線分享實戰Tomcat效能最佳化程式設計師JavaTomcat
- Java技術相關學習路線,學習Java後薪資如何?Java