开发喵星球

MyBatis 的 Mapper 编写有几种方式?

MyBatis 的 Mapper 编写方式主要有三种:

1. XML 文件配置:

在 XML 映射文件中配置 SQL 语句和映射关系。这是最传统的方式,将 SQL 语句和映射关系分别写在 XML 文件中。

示例:



    
    

2. 注解方式:

使用注解在 Java 接口方法上直接编写 SQL 查询语句和映射关系。这种方式比较简洁,SQL 和 Java 方法在同一个接口文件中。

示例:

// UserMapper.java
public interface UserMapper {
    @Select("SELECT * FROM users WHERE id = #{id}")
    User getUserById(@Param("id") Long id);
    // 其他注解方式定义的 SQL 方法
}

3. XML 文件 + 注解方式:

结合 XML 映射文件和注解,使用 XML 定义部分 SQL,然后在 Java 接口中使用注解定义其他 SQL 和映射关系。这种方式灵活性较高,可以根据需要选择使用 XML 或注解方式。

示例:



    
    

// UserMapper.java
public interface UserMapper {
    // 注解方式定义的 SQL 方法
    @Select("SELECT * FROM users WHERE name = #{name}")
    List getUsersByName(@Param("name") String name);
    // 其他方法
}

选择何种方式编写 Mapper 取决于团队和个人偏好,以及项目的需求和复杂度。XML 方式可以更清晰地分离 SQL 和 Java 代码,注解方式更为简洁,而混合方式则提供了更大的灵活性。

Proudly powered by WordPress