MyBatis注解基本使用

2024-03-01 13:34:18 浏览数 (2)

前言

MyBatis注解是一种用于配置MyBatis映射关系和SQL操作的方式,通过在Java接口或方法上使用注解来代替XML配置,使得配置更加简洁明了。在MyBatis中,可以使用以下几个主要的注解来定义映射关系和SQL操作。

1、@Select:用于定义SELECT查询操作。

2、@Insert:用于定义INSERT插入操作。

3、@Update:用于定义UPDATE更新操作。

4、@Delete:用于定义DELETE删除操作。

5、@Options:用于定义一些选项,例如获取自动生成的主键。

6、@Param:用于给SQL语句中的参数取别名,方便在注解中引用。

MyBatis注解代码示例

1. 定义Mapper接口

代码语言:javascript复制
public interface UserMapper {
    @Select("SELECT * FROM users WHERE id = #{id}")
    User getUserById(@Param("id") int id);

    @Insert("INSERT INTO users (name, email) VALUES (#{name}, #{email})")
    @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
    void insertUser(User user);

    @Update("UPDATE users SET name = #{name}, email = #{email} WHERE id = #{id}")
    void updateUser(User user);

    @Delete("DELETE FROM users WHERE id = #{id}")
    void deleteUser(@Param("id") int id);
}

2. 配置Mapper接口扫描

代码语言:javascript复制
<!-- mybatis-config.xml -->
<configuration>
    <mappers>
        <package name="com.example.mapper"/>
        <!-- 可以添加其他包路径 -->
    </mappers>
</configuration>

在上面的例子中,我们定义了一个UserMapper接口,使用注解来代替XML配置。@Select注解用于定义查询操作,@Insert用于定义插入操作,@Update用于定义更新操作,@Delete用于定义删除操作。@Options注解用于配置选项,这里用于获取自动生成的主键。@Param注解用于给SQL语句中的参数取别名,以解决参数名冲突的问题。

0 人点赞