MyBatis Mapper接受参数的四种方式代码解析
这篇文章主要介绍了MyBatis Mapper接受参数的四种方式代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
对于单个参数而言,可以直接写#{param},这里的占位符名称没有限制,反正就一个参数一个占位符,不需要指定名称
对于多个参数,有常用的四种方式
根据位置排序号
public interface UserDao {
public Integer addUser(String username, String password);
}
对应mapper文件中的片段
<insert id="addUser">
<!-- 按照参数位置从param1开始排序 -->
insert into users(username, password) values(#{param1}, #{param2})
</insert>
POJO对象传入
public interface UserDao {
public Integer addUser(String username, String password);
}
对应mapper文件中的片段
<insert id="addUser">
<!-- 根据属性名访问数据 -->
insert into users(username, password) values(#{username}, #{password})
</insert>
Map对象传入
public interface UserDao {
// mapper中#{}则通过map中的key访问
public Integer addUser(Map<String, Object> map);
}
对应mapper文件中的片段
<insert id="addUser">
insert into users(username, password) values(#{username}, #{password})
</insert>
@Param注解(Map对象的另一种形式)
public interface UserDao {
// 注解中的值就是map的key
public Integer addUser(@Param("name")String username, @Param("word")String password);
}
对应mapper文件中的片段
<insert id="addUser">
insert into users(username, password) values(#{name}, #{word})
</insert>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
springboot使用redisTemplate操作lua脚本
本文主要介绍了springboot使用redisTemplate操作lua脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-08-08
java.lang.Long cannot be cast to ja
本文主要介绍了java.lang.Long cannot be cast to java.lang.Integer数据类型转换异常解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-07-07
解决java.sql.SQLException:The server time zone value &apo
这篇文章主要介绍了解决java.sql.SQLException:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-03-03


最新评论