首页 > 其他分享 >mybatis - 获取参数值

mybatis - 获取参数值

时间:2022-11-22 19:34:19浏览次数:56  
标签:username map 获取 参数 user mybatis password where 参数值

一、获取参数值

1.只有一个参数情况

<delete id="deleteUserById"> 
delete from t_user where id = #{id}
delete from t_user where id = '${id}'
</delete>

${} 和 #{} 都可以用来获取参数值,但是两种方式对于底层sql拼接不一样。

${} : 底层用的是字符串拼接的方式来注入sql语句,使用${}要加上单引号

#{} : 底层用的是占位符的方式来注入sql语句

2.有多个参数的情况

<select id="getUser" resultType="user">
select * from t_user where username = #{arg0} and password = #{arg1}
select * from t_user where username = '${param0}' and password = '${param1}'
</select>

以arg0,arg1...为键,参数为值

以param0,param1...为键,参数为值

3.有多种参数的情况,使用map

mapper接口

User checkUserByMap(Map<String,Object> map);

测试类

LinkedHashMap map = new LinkedHashMap<String,Object>();
map.put("username","admin");
map.put("password","123456");
usermapper.checkUserByMap(map)

映射文件

<select id="checkUserByMap" resultType="user">
select * from t_user where username = #{username} and password = #{password}
select * from t_user where username = '${param0}' and password = '${param1}'
</select>

以map中的key为键,参数为值

4.参数为实体类的情况

<insert id="addUser">
insert into t_user values(#{id},#{username},#{password})
</insert>

5.使用注解来获取参数值   (用来处理一个或者多个参数的情况)

User checkUserByMap(@Param("username") String username, @Param("password") String password);
<select id="checkUserByAnnotaion" resultType="user">
select * from t_user where username = #{username} and password = #{password}
</select>

以Param注解的值...为键,参数为值

以param0,param1...为键,参数为值

标签:username,map,获取,参数,user,mybatis,password,where,参数值
From: https://blog.51cto.com/u_15497049/5878383

相关文章

  • mybatis - CRUD操作
    一、CRUD操作映射文件<!--intaddUser();--><insertid="addUser">insertintot_uservalues(null,'张三','123456')</insert><!......
  • MyBatis - 基础学习9 - 动态sql(sql片段,foreach)
    一.sql片段为什么要使用sql片段:我么在编写一些大规模的sql语句时,总会面临所写的sql语句在几个增删改语句中反复出现,它们都做着相同的事,我们却要反复的编写(虽然可以复制粘......
  • PHP 跟据用户IP获取所在国家高效解决方案(GEOIP)
    最近项目中有一个需求统计访客数据,为了保证效率。前端尽量轻量化,仅将访客原始请求信息不作任何处理直接写入消息队列。后端计划任务服务器监听消息队列,解析useragent,ip......
  • FileReader之获取文本文件内容为字符串
    FileReader之获取文本文件内容为字符串FileReader官网描述:FileReader对象允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用File或Blob......
  • net中c#如何通过快捷方式,获取程序所在的路径?
    在net的c#中如何通过快捷方式,获取程序的所在路径?其实快捷方式也是为了方便用户打开,而对应用程序做的一个映射,本质上还是指向应用程序所在路径的。今天就用代码实现这个功能......
  • Date 获取当天最小日期 与最大日期 00:00:00 59:59:99
      1date时间 00:00:00转成59:59:99  落数据发现,同事时间格式是  导致结束时间全都是00:00:00,这不是结束的最大时间格式。 于是重写了set方法,把时......
  • 把Mybatis Generator生成的代码加上想要的注释
    作者:王建乐1前言在日常开发工作中,我们经常用MybatisGenerator根据表结构生成对应的实体类和Mapper文件。但是MybatisGenerator默认生成的代码中,注释并不是我们想要的,所以......
  • 图像处理技术:图像获取 ----- 三、MATLAB基础知识
    1.MATLAB的数据种类、文件类型、操作符数据种类    文件类型:            操作符:           ......
  • 漏洞:SSH版本信息可被获取
    绿盟扫描到如下漏洞:SSH版本信息可被获取CVE-1999-0634解决方法:#echo"Welcometossh">/etc/ssh/ssh_banner#vim/etc/ssh/sshd_config,增加如下框选内容,以改变SSH......
  • 【Mybatis学习总结九】Spring中集成Mybatis
    学习了Mybatis的基本内容后,现在最重要的内容莫过于是在Spring中集成Mybatis了。好处之一就是不用再单独配置Mybatis-config.xml文件了(含有数据库连接池和配置类名以及注册......