更新時間:2023-01-04 17:00:23 來源:動力節(jié)點 瀏覽1116次
1. 數(shù)據(jù)連接池的工作機制是什么? 有什么優(yōu)點?
J2EE 服務器啟動時會建立一定數(shù)量的池連接,并一直維持不少于此數(shù)目的池連接。
客戶端程序需要連接時,池驅(qū)動程序會返回一個未使用的池連接并將其表記為忙。
如果當前沒有空閑連接,池驅(qū)動程序就新建一定數(shù)量的連接,新建連接的數(shù)量有配置參數(shù)決定。
當使用的池連接調(diào)用完成后,池驅(qū)動程序?qū)⒋诉B接表記為空閑,其他調(diào)用就可以使用這個連接。
當鏈接數(shù)量達到連接池最大值時候,池驅(qū)動程序?qū)⒉辉賱?chuàng)建新連接,只能等等連接空閑以后重用已有的連接。
`在這里插入代碼片`優(yōu)點:連接少的時候可以復用
2. 寫出JDBC連接數(shù)據(jù)庫的6個步驟?
注冊驅(qū)動
獲取連接
創(chuàng)建一個Statement語句對象
執(zhí)行SQL語句
處理結(jié)果集
關(guān)閉資源
3. JDBC中的Statement 和PreparedStatement的區(qū)別?
PreparedStatement 繼承于 Statement
Statement 一般用于執(zhí)行固定的沒有參數(shù)的SQL
PreparedStatement 一般用于執(zhí)行有?參數(shù)預編譯的SQL語句。
PreparedStatement支持?操作參數(shù),相對于Statement更加靈活。
PreparedStatement可以防止SQL注入,安全性高于Statement。
4. JDBC中大數(shù)據(jù)量的分頁解決方法?
利用sql語句進行分頁,這樣每次查詢出的結(jié)果集中就只包含某頁的數(shù)據(jù)內(nèi)容
5. 說說數(shù)據(jù)庫連接池工作原理和實現(xiàn)方案?
工作原理:JAVA EE服務器啟動時會建立一定數(shù)量的池連接,并一直維持不少于此數(shù)目的池連接。客戶端程序需要連接時,池驅(qū)動程序會返回一個未使用的池連接并將其表記為忙。如果當前沒有空閑連接,池驅(qū)動程序就新建一定數(shù)量的連接,新建連接的數(shù)量有配置參數(shù)決定。當使用的池連接調(diào)用完成后,池驅(qū)動程序?qū)⒋诉B接表記為空閑,其他調(diào)用就可以使用這個連接。
實現(xiàn)方案:返回的Connection是原始Connection的代理,代理Connection的close方法,當調(diào)用close方法時,不是真正關(guān)連接,而是把它代理的Connection對象放回到連接池中,等待下一次重復利用。
以上就是“一些經(jīng)常被問到的jdbc面試題”,你能回答上來嗎?如果想要了解更多的Java面試題相關(guān)內(nèi)容,可以關(guān)注動力節(jié)點Java官網(wǎng)。