开发喵星球

MyBatis 是如何将 sql 执行结果封装为目标对象并返回的?都有哪些映射形式?

MyBatis 将 SQL 执行结果封装为目标对象并返回的过程主要通过两种映射形式实现:

1. 基于 ResultMap 的映射:

示例:



    
    
    



2. 注解方式的映射:

示例:

// Java 注解方式
@Select("SELECT user_id, user_name FROM users WHERE id = #{id}")
@Results({
    @Result(property = "id", column = "user_id"),
    @Result(property = "username", column = "user_name")
    // 其他映射关系
})
User getUserById(int id);

这两种方式都能将 SQL 查询结果映射到 Java 对象上,通过映射配置,将查询结果集中的列与 Java 对象的属性进行对应,最终返回映射后的对象或对象集合。

Proudly powered by WordPress