1. 程式人生 > 其它 >【測試理論-04】軟體測試基本流程和bug缺陷級別分類

【測試理論-04】軟體測試基本流程和bug缺陷級別分類

定義:MyBatis 是一款優秀的持久層框架,它支援自定義 SQL、儲存過程以及高階對映。MyBatis 免除了幾乎所有的 JDBC 程式碼以及設定引數和獲取結果集的工作。MyBatis 可以通過簡單的 XML 或註解來配置和對映原始型別、介面和 Java POJO(Plain Old Java Objects,普通老式 Java 物件)為資料庫中的記錄。

maven導包:

org.mybatismybatis3.4.6

1.持久化:
資料持久化:就是將程式的資料在持久態和瞬時態轉化的過程
為什麼持久化:記憶體的斷電即失性質

2.持久層:
2.1:完成持久化的程式碼塊
2.2:層界限明顯
資料庫建立:

新建專案:
1.建立maven專案
2.刪除src
3.匯入依賴

建立一個模組
1.編寫mybatis的核心配置檔案
2.編寫mybatis的核心工具類

編寫程式碼:
dao介面

實現類

測試:
資源匯出失敗問題解決:

  • [



    src/main/resource

    /*.properties
    /.xml

    true


    src/main/java

    **/
    .properties
    **/*.xml

    true


    ]
    mapper.xml在核心註冊檔案中配置mapper一定要註冊

CRUD
1.編寫介面
2.編寫mapper中的sql語句
3.測試

1.namespace中的包名要和介面中的包名一致
2.select 選擇語句
1.id對應namespace中的方法名
2.resultType:Sql語句中的返回值
3. parameterType:引數型別

查詢:只需要改介面和實現類(也就是xml中的標籤),最後再改一個測試類,測試裡面的框架為

增加:
注意:增刪改需要提交事務()

萬能map:
如果實體類或者資料庫中表,欄位,或引數過多,可以考慮使用map



1.map傳遞引數直接在sql中取出key就好了,但是物件傳遞引數需要直接在sql中取物件的屬性
2.多個引數用map或者註解

思考:
模糊查詢:
1.Java程式碼執行的時候,傳遞萬用字元% %
2.在sql拼接中使用萬用字元,可以寫死傳遞的資料,以防sql注入

配置解析
1.核心配置檔案
mybatis-config.xml
configuration(配置)

**properties(屬性)**
**settings(設定)**
**typeAliases(類型別名)**
typeHandlers(型別處理器)
objectFactory(物件工廠)
plugins(外掛)
environments(環境配置)
    environment(環境變數)
        transactionManager(事務管理器)
        dataSource(資料來源)
databaseIdProvider(資料庫廠商標識)
mappers(對映器)

環境配置(environments)
1.MyBatis 可以配置成適應多種環境
2.不過要記住:儘管可以配置多個環境,但每個 SqlSessionFactory 例項只能選擇一種環境。
3.POOLED–: 這種處理方式很流行,能使併發 Web 應用快速響應請求。 (0預設連線池)
4.預設事務管理器:JDBC

屬性(properties)
1.我們可以使用properties來實現引用配置檔案
2.這些屬性可以在外部進行配置,並可以進行動態替換。你既可以在典型的 Java 屬性檔案中配置這些屬性,也可以在 properties 元素的子元素中設定。(db。properties)

1.編寫一個配置檔案:
db.properties

2.在核心配置檔案中引入:

1.可以直接引入外部檔案
2.可以在其中增加屬性
3.如果有兩個檔案有同一個欄位,優先引用外部檔案

類型別名(typeAliases)
1.類型別名可為 Java 型別設定一個縮寫名字
2.它僅用於 XML 配置,意在降低冗餘的全限定類名書寫。

3.也可以指定一個包名,MyBatis 會在包名下面搜尋需要的 Java Bean
掃描實體類的包,他的預設別名就是這個類的類名,首字母小寫

注意:在實體類比較少的使用第一種,很多的時候用第二種
第一種可以自定義,第二種不行

設定(settings)
1.這是 MyBatis 中極為重要的調整設定,它們會改變 MyBatis 的執行時行為。

對映器
方式一:

方式二:使用class檔案繫結註冊

方式三:使用掃描包注入繫結

生命週期和作用域
1.生命週期和作用域是至關重要的,因為錯誤的使用會導致非常嚴重的併發問題。
2.SqlSessionFactoryBuilder
1.一旦建立了 SqlSessionFactory,就不再需要它了
2.區域性變數
3.SqlSessionFactory
1.說白了就是資料庫連線詞,一旦建立就一直存在
2.全域性變數
3.最簡單的就是使用單例模式或者靜態單例模式。
4.SqlSession
1.連結資料庫的請求
2.所以它的最佳的作用域是請求或方法作用域
3.用完就要關閉