MyBatis中的param
和@Param
都是用来在SQL语句中传递参数的,但是有一些区别:
param
是在XML配置文件中使用的,用来指定方法参数的别名,以便在SQL语句中引用。例如:<select id="getUserById" parameterType="int" resultType="User">
select * from user where id = #{param}
</select>
这里的#{param}
就是引用了方法参数的别名。
@Param
是在Java方法参数上使用的注解,用来指定方法参数的别名,以便在SQL语句中引用。例如:public User getUserById(@Param("id") int id);
这里的@Param("id")
就是指定了方法参数的别名为id
,在SQL语句中可以使用#{id}
来引用。
总的来说,param
是在XML配置文件中指定方法参数的别名,而@Param
是在Java方法参数上使用的注解来指定方法参数的别名。两者的作用都是为了在SQL语句中引用方法参数。