一.MyBatis基礎知識
二.MyBatis的注解開發
注解
作用對象
對應的XML元素
描述
@Results
方法
< resultMap >
多個結果映射清單屬性:value,是Result注解的數組
@Result
< id > < result >
在列和屬性或者字段之間的單獨結果映射。屬性:id,column,property,javaType,type Handler,one,many。 id是一個布爾值,表示了應該被用來比較的屬性。one屬性應于表示一對一的關聯,和< association >相似,many屬性是對集合而言的,和< collection >相似。
@One
< association >
複雜類型的單獨屬性值映射。屬性:select,已映射語句(也就是映射器的方法)的完全限定名,它可以加載合适類型的執行個體
@Many
< collection >
複雜類型的集合屬性映射。屬性:select,是映射器方法的完全限定名,它可加載合适類型的一組執行個體
@Options
映射語句的屬性
這個注解提供通路交換和配置選項的寬廣範圍,它們通常在映射語句上作為屬性出現。而不是将每條語句注解變複雜,Options 注解提供連貫清晰的方式來通路它們。屬性: useCache=true,flushCache=false,resultSetType=FORWARD_ONLY,statementType=PREPARED,fetchSize= -1,timeout=-1 ,useGeneratedKeys=false ,keyProperty=”id“。了解Java 注解是很重要的,因為沒有辦法來指定“null ”作為值。是以,一旦你使用了 Options注解,語句就受所有預設值的支配。要注意什麼樣的預設值來避免不期望的行為
@select @Insert @Update @Delete
< select> < insert > < delete > < select >
這些注解中的每一個代表了執行的真實 SQL。它們每一個都使用字元串數組(或單獨的字元串)。如果傳遞的是字元串數組,它們由每個分隔它們的單獨空間串聯起來。屬性:value,這是字元串數組用來組成單獨的SQL語句
@InsertProvider @UpdateProvider @DeleteProvider @SelectProvider
< insert> < update> < delete> < select>允許建立動态SQL。
這些可選的SQL注解允許你指定一個類名和一個方法在執行時來傳回運作的SQL。基于執行的映射語句, MyBatis會執行個體化這個類,然後執行由 provider指定的方法. 這個方法可以選擇性的接受參數對象作為它的唯一參數,但是必須隻指定該參數或者沒有參數。屬性:type,method。type 屬性是類的完全限定名。method 是該類中的那個方法名。
student表
此處省略.......
實作對資料的增删改查
在執行删除測試時,查詢的測試在删除測試前面,但是删除測試的執行情況比查詢測試優先級高(正常來說,測試順序是依次執行)

在進行更新時,先進行條件查詢測試,然後進行更新測試,最後進行全部查詢測試。