MyBatis 是一個(gè)流行的 Java 持久層框架,它提供了多種方式來映射 Java 對(duì)象和數(shù)據(jù)庫(kù)表,并支持靈活的 SQL 查詢和數(shù)據(jù)庫(kù)操作。在 MyBatis 中,常用的注解用于配置和映射 SQL 語句與 Java 方法之間的關(guān)系。以下是 MyBatis 中常用的注解:
1. @Mapper:用于標(biāo)識(shí)一個(gè)接口類,表示該接口是 MyBatis 的映射器接口,用于定義數(shù)據(jù)庫(kù)操作的方法。
2. @Select:用于將一個(gè) SQL 查詢語句與方法關(guān)聯(lián)起來,在方法執(zhí)行時(shí)執(zhí)行相應(yīng)的查詢操作。
3. @Insert:用于將一個(gè) SQL 插入語句與方法關(guān)聯(lián)起來,在方法執(zhí)行時(shí)執(zhí)行相應(yīng)的插入操作。
4. @Update:用于將一個(gè) SQL 更新語句與方法關(guān)聯(lián)起來,在方法執(zhí)行時(shí)執(zhí)行相應(yīng)的更新操作。
5. @Delete:用于將一個(gè) SQL 刪除語句與方法關(guān)聯(lián)起來,在方法執(zhí)行時(shí)執(zhí)行相應(yīng)的刪除操作。
6. @Result:用于指定 SQL 查詢結(jié)果與 Java 對(duì)象之間的映射關(guān)系,可以用于類或方法上。
7. @Results:用于指定多個(gè) @Result 注解,用于類或方法上。
8. @Param:用于指定 SQL 語句中的參數(shù)名稱,可以在方法參數(shù)上使用,將參數(shù)傳遞給 SQL 語句。
9. @Options:用于指定一些額外的選項(xiàng),如主鍵生成策略、批量插入等。
10. @ResultMap:用于引用已定義的 @Results 注解,可以在方法上使用,重用映射關(guān)系。
11. @One:用于指定一對(duì)一關(guān)系的映射,用于類或方法上。
12. @Many:用于指定一對(duì)多關(guān)系的映射,用于類或方法上。
這些注解可以在 MyBatis 的映射器接口中使用,通過注解配置和定義 SQL 語句與方法的對(duì)應(yīng)關(guān)系,簡(jiǎn)化了 XML 配置文件的編寫,提高了開發(fā)效率。注意,除了注解方式,MyBatis 也支持通過 XML 文件來配置映射關(guān)系和 SQL 語句。