JdbcTemplate&NamedParameterJdbcTemplate重要方法及事務處理相關簡介

1、什麼是JDBC?

        JDBC(Java DataBase Connectivity,java數據庫連接)是一種用於執行SQL語句的Java API, 可以爲多種關係數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。 而多的這個template,就是模板,是Spring框架爲我們提供的. 所以JDBCTemplate就是Spring對JDBC的封裝,通俗點說就是Spring對jdbc的封裝的模板

2、JDBC的原理

        通過Connection這個類獲取數據庫的連接, 然後通過PreparedStatement類處理SQL語句,再通過它的.setObject方法傳入數據, 最後通過方法.executeUpdate()和.executeQuery()執行更新,這就是JDBC的基本原理。 JDBCTemplate幫我們省去了很多麻煩. ②指定數據庫連接參數. 打開數據庫連接. 預編譯並執行SQL語句. 遍歷查詢結果(如果需要的話). 處理拋出的任何異常. 處理事務. 關閉數據庫連接 那麼JDBCTemplate怎麼做到的,這就和spring有關係了 SpringIOC容器將管理數據庫連接的數據源當作普通Java Bean一樣管理, 然後將數據源注入封裝類JdbcTemplate中,: JdbcTemplate的dataSource屬性就是注入配置的數據源。

3、JdbcTemplate主要提供以下五類方法:

  • execute方法:可以用於執行任何SQL語句,一般用於執行DDL語句;
  • update方法及batchUpdate方法:update方法用於執行新增、修改、刪除等語句;batchUpdate方法用於執行批處理相關語句;
  • query方法及queryForXXX方法:用於執行查詢相關語句;
  • call方法:用於執行存儲過程、函數相關語句。

 

4、事務四個特性:原子性,一致性,隔離性,持久性

事務的四大特性(ACID):

1).原子性(atomicity):一個事務必須視爲一個不可分割的最小工作單元,整個事務中的所有操作要麼全部提交成功,要麼全部失敗回滾,對於一個事務來說,不可能只執行其中的一部分操作,這就是事務的原子性。

2).一致性(consistency):數據庫總數從一個一致性的狀態轉換到另一個一致性的狀態。 3

).隔離性(isolation):一個事務所做的修改在最終提交以前,對其他事務是不可見的。

4).持久性(durability):一旦事務提交,則其所做的修改就會永久保存到數據庫中。此時即使系統崩潰,修改的數據也不會丟失。

5、事務的實現

        通俗來說就是:多個sql語句堆積到一起,一下子提交上去執行,全執行成功,則執行成功,若有任一處錯誤則事務不成功。

springboot中jdbc事務使用方式:在service層相關方法中使用註解:@Transactional


關於NamedParameterJdbcTemplate

(1)named parameter 即,具名參數: SQL 按名稱(以冒號開頭)而不是按位置進行指定. 具名參數更易於維護, 也提升了可讀性. 具名參數由框架類在運行時用佔位符取代。

(2)NamedParameterJdbcTemplate也可以使用JdbcTemplate的所有方法

(3)NamedParameterJdbcTemplate在springboot開發中很好用,而且可讀性很高

(4)依賴包(不加版本默認使用最新的包)

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

關於java連接數據庫需要的配置

(1)配置mysql連接驅動

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>

(2)配置userName,password,連接url

一二步缺一不可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章