# 和 $ 的区别①
2023-12-14 05:33:51
# 和 $ 都是为了获取变量的值
# 和 $ 区别 :
使用 # 查询 id 为 1 的内容
如果看不懂代码,就去看<<Mybatis 的操作(结合上文)续集>>,我这里为了简练一点就不多解释了
@Select("select * from userInfo where id = #{id}")
UserInfo selectOne(Integer id);
@Test
void selectOne() {
log.info(userInfoMapper.selectOne(1).toString());
}
使用 $?查询 id 为 1 的内容
@Select("select * from userInfo where id = ${id}")
UserInfo selectOne(Integer id);
@Test
void selectOne() {
log.info(userInfoMapper.selectOne(1).toString());
}
然后我们再换一个案例,根据姓名查询数据
先使用"#"
@Select("select * from userInfo where username = #{username}")
UserInfo selectByName(String username);
@Test
void selectByName() {
log.info(userInfoMapper.selectByName("admin").toString());
}
然后我们使用"$" ,注意哦,这里的 ${} 外面加了单引号
@Select("select * from userInfo where username = '${username}'")
UserInfo selectByName(String username);
@Test
void selectByName() {
log.info(userInfoMapper.selectByName("admin").toString());
}
这是因为使用 # 的时候,如果参数为 String ,会自动加上单引号
但是 $ 不会加上单引号, $ 是直接进行拼接,所以如果 $ 遇到 String 就要自己加上单引号
?
文章来源:https://blog.csdn.net/qq_40841463/article/details/134930269
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!