MyBatis 通用查询映射与参数匹配详解

在 MyBatis 中,resultMap 是用于定义查询结果映射关系的关键元素,它将数据库查询结果与 Java 对象属性进行匹配。以下代码示例演示了 resultMap 的使用,并详细讲解了参数匹配机制。

代码示例:

<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.nz.entity.user">
    <id column="user_id" property="id" />
    <result column="user_email" property="email" />
    <result column="user_name" property="nickName"/>
    <result column="user_status" property="userState"  />
    <result column="user_permissions" property="user_permissions" />
    <result column="create_time" property="createDate"  />
</resultMap>

<delete id="deleteUserById" parameterType="int">
    DELETE FROM user WHERE id = #{id}
</delete>

//删除
public int deleteUserById(@Param("user_id") int user_id);

参数匹配说明:

在上述代码中,@Param("user_id") 注解用于将 Java 方法参数 user_id 映射到 SQL 语句中的参数名 id。MyBatis 会自动将参数名与 SQL 语句中的参数名进行匹配,如果不匹配会抛出异常。

总结:

  • @Param 注解用于明确指定 Java 方法参数与 SQL 语句中参数的对应关系。
  • MyBatis 会自动将 @Param 注解指定的参数名与 SQL 语句中的 #{} 占位符进行匹配。
  • 确保 Java 方法参数名与 SQL 语句中的参数名一致,或者使用 @Param 注解指定匹配关系,避免出现参数匹配错误。
MyBatis 通用查询映射与参数匹配详解

原文地址: https://www.cveoy.top/t/topic/mUOG 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录