Java調(diào)用SQL腳本執(zhí)行常用的方法示例
前言
大家都知道,在Java中調(diào)用SQL腳本的方式有多種,在這里只記錄一種自己常用的方式,個人覺得挺實用方便的。
運用ScriptRunner這個類。
ScriptRunner類用于執(zhí)行SQL語句,例如創(chuàng)建數(shù)據(jù)庫schema,或傳入缺省或測試數(shù)據(jù)庫等等。
示例代碼如下:
import org.apache.ibatis.io.Resources; import org.apache.ibatis.jdbc.ScriptRunner; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.Properties; /** * 運行Sql腳本 * sql腳本放在resources下的sql文件夾下 */ public final class RunSqlScript { /** * <p>運行指定的sql腳本 * @param sqlFileName 需要執(zhí)行的sql腳本的名字 */ public static void run(String sqlFileName) { try { // 獲取數(shù)據(jù)庫相關(guān)配置信息 Properties props = Resources.getResourceAsProperties("db.properties"); // jdbc 連接信息: 注: 現(xiàn)在版本的JDBC不需要配置driver,因為不需要Class.forName手動加載驅(qū)動 String url = props.getProperty("jdbc.url"); String username = props.getProperty("jdbc.username"); String password = props.getProperty("jdbc.password"); // 建立連接 Connection conn = DriverManager.getConnection(url, username, password); // 創(chuàng)建ScriptRunner,用于執(zhí)行SQL腳本 ScriptRunner runner = new ScriptRunner(conn); runner.setErrorLogWriter(null); runner.setLogWriter(null); // 執(zhí)行SQL腳本 runner.runScript(Resources.getResourceAsReader("sql/" + sqlFileName + ".sql")); // 關(guān)閉連接 conn.close(); // 若成功,打印提示信息 System.out.println("====== SUCCESS ======"); } catch (IOException | SQLException e) { e.printStackTrace(); } } }
ps下:在現(xiàn)在版本的JDBC驅(qū)動中,已經(jīng)不需要像以前一樣加載driver和手動class.forName(driver)
來加載驅(qū)動了,詳情可以自行點進(jìn)DriverManager中看,有一個static {} 靜態(tài)代碼塊,里面已經(jīng)為我們加載初始化了驅(qū)動。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
spring boot下 500 404 錯誤頁面處理的方法
本篇文章主要介紹了spring boot下 500 404 錯誤頁面處理的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04Reactor中的onErrorContinue?和?onErrorResume
這篇文章主要介紹了Reactor中的onErrorContinue?和?onErrorResume,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下2022-09-09詳解Spring Cloud Eureka多網(wǎng)卡配置總結(jié)
本篇文章主要介紹了詳解Spring Cloud Eureka多網(wǎng)卡配置總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04Spring注解驅(qū)動之@EventListener注解使用方式
這篇文章主要介紹了Spring注解驅(qū)動之@EventListener注解使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09Mybatis邏輯分頁與物理分頁PageHelper使用解析
這篇文章主要為大家介紹了Mybatis邏輯分頁與物理分頁PageHelper使用解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12