mybatis 的输入参数:

    指得就是parameterType的参数 这个参数就代表的sql语句中的输入参数

    

      sql语句中的参数使用  有两种方式 :

       使用#{} 获取:  8个基本数据类型 + String 类型 都可以随意起名 比如 #{aaa}  当然不推荐 最好写的规范一些

                select * from where stuno = #{id}  这个id只是随意起的名字

              引用数据类型 就要写 实体类中的名字 比如 我实体类中有一个属性 private Sting stuno; 那么应该写 #{stuno} 不能瞎写

                select * from where stuno= #{stuno}

       使用${} 获取   8个基本数据类型 + String 类型 必须写${value} 必须是这个 不能更改  (普通的查询不推荐使用$()形式)

                select * from where stuno = ${value}    必须这样写

              引用数据类型跟#{} 的使用一样 必须写实体类中规定的属性

                select * from where stuno= ${stuno}  

        

                模糊查询,方式一: 测试类
              select stuno,stuname,stuage from student where stuage= #{stuAge} or stuname like #{stuName}
              Student student = new Student();
              student.setStuAge(24);
              student.setStuName("%w%");
              List<Student> students = studentMapper.queryStudentBystuageOrstuName(student) ;//接口的方法->SQL

                模糊查询,方式二: xml中
              
              select stuno,stuname,stuage from student where stuage= #{stuAge} or stuname like '%${stuName}%'

                

          #{}自动给String类型加上'' (自动类型转换)

          ${} 原样输出,但是适合于 动态排序(动态字段)

     简单介绍下parameterType中"复杂"的输入参数:  

     i: hasMap 类型  :parameterType的属性值填写HashMap  sql语句中可以的名字没有要求

        

              

              测试的时候 key的值需要跟sql语句中的对应

     ii:嵌套对象的查询;

          我的数据中Studen表有两个地址,分别是学校地址跟家庭地址  我的实体类Student类 只有一个        private  Address address;  我的Address类中有 两个属性 学校地址跟家庭地址

          看图:

            Student类

              

                    Student表:

              

            Address类:

              

                    StudentMapper.xml   我的输入参数为对象类型 我就可以使用对象属性.另一个属性

                address.stu_shcooladdress

                (Student内的属性). (Address中的属性)

              

                     测试类:

                       

      

Mybatis 的输入参数学习的更多相关文章

  1. python获取输入参数

    python获取输入参数 学习了:https://www.cnblogs.com/angelatian/p/5832448.html import sys模块: len(sys.argv)参数个数 s ...

  2. python 3.4读取输入参数

    python 3.4读取输入参数 学习了:https://blog.csdn.net/qq_24815615/article/details/52302615 注意,sys.args[0]是pytho ...

  3. Mybatis 学习---${ }与#{ }获取输入参数的区别、Foreach的用法

    一.Mybatis中用#{}和${}获取输入参数的区别 1.“#{}“和“${}”都可以从接口输入中的map对象或者pojo对象中获取输入的参数值.例如 <mapper namespace=&q ...

  4. Mybatis学习笔记——输入参数parameterType、Mybatis调用存储过程

    输入参数:parameterType(两种取值符号) 1.类型为简单类型 区别:     (1) #{可以为任意值}         ${vaue}--->标识符只能是value     (2) ...

  5. Mybatis框架四:输入参数、输出参数

    输入参数可以有三种:简单类型,POJO,包装类 关于前两种: http://www.cnblogs.com/xuyiqing/p/8600888.html 这里写一下传递包装类参数: 一个POJO:U ...

  6. JavaWeb_(Mybatis框架)输入和输出参数_五

    系列博文: JavaWeb_(Mybatis框架)JDBC操作数据库和Mybatis框架操作数据库区别_一 传送门 JavaWeb_(Mybatis框架)使用Mybatis对表进行增.删.改.查操作_ ...

  7. GO学习笔记 - 函数名前面是否有输入参数肯定是不一样的!!

    在刚接触GO语言时候,我相信你也会有这种困惑,为什么有的函数名前面有输入参数,而一些却没有,它们是否有差别?确实有差别,没有输入参数,是一般的函数:有输入参数,是结构的方法,输入参数叫做“方法接收者” ...

  8. PlaNet,使用图像输入来学习世界模型

    Google AI团队与DeepMind合作,上周宣布了一个名为PlaNet的新的开源“Deep Planning”网络. PlaNet是一个人工智能代理,它只使用图像输入来学习世界模型,并使用这些模 ...

  9. MyBatis中传入参数parameterType类型详解

    前言 Mybatis的Mapper文件中的select.insert.update.delete元素中有一个parameterType属性,用于对应的mapper接口方法接受的参数类型.本文主要给大家 ...

随机推荐

  1. java CPU 100% 排查

    一个应用占用CPU很高,除了确实是计算密集型应用之外,通常原因都是出现了死循环. (友情提示:本博文章欢迎转载,但请注明出处:hankchen,http://www.blogjava.net/hank ...

  2. hadoop之HDFS学习笔记(二)

    主要内容:hdfs的核心工作原理:namenode元数据管理机制,checkpoint机制:数据上传下载流程 1.hdfs的核心工作原理 1.1.namenode元数据管理要点 1.什么是元数据? h ...

  3. linux主机名

    [linux主机名] 1.查看主机名 主机名即是一台主机的名字,在终端窗口中输入命令:hostname或uname –n,均可以查看到当前主机的主机名. 2.临时修改主机名 命令行下运行命令:“hos ...

  4. NBU 还原主/others服务器的SQLSERVER

    一.将数据库还原回主服务器 1.运行NetBackup MS SQL Client(10.10.0.14 administrator)2.设置连接属性 testsa 添加验证凭据 3.选择恢复,再选择 ...

  5. 39. Combination Sum (Back-Track)

    Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C wher ...

  6. react-navigation的多次点击重复跳转同一页面、不在堆栈路由页面使用navigation方法的解决思路

    一.react-navigation的初使用 createStackNavigator  ==> createSwitchNavigator  ==>  createAppContaine ...

  7. ICG游戏:尼姆游戏异或解法的证明

    描述: 尼姆博奕(Nimm Game),有n堆石子,每堆石子有若干石子,两个人轮流从某一堆取任意多的物品,规定每次至少取一个,多者不限.取走最后石子的人获胜. 标准解法: 判断: 先计算先手是必胜还是 ...

  8. jdbc和Java中的日期问题

    JDBC中的日期Java.sql.Date 是继承自Java中的Java.util.Date,在实现插入的时候可以 将Java.util.Date类型的时间转换成毫秒数,date.getTime(), ...

  9. jFinal render为什么不跳转到指定的页面

    jFinal render为什么不跳转到指定的页面 1:需要在你自己的主配置文件里面配置所有页面的文件前缀,没配置默认是项目的根目录 //配置页面访问主路径 me.setBaseViewPath(&q ...

  10. 基于etcd插件的CoreDNS动态域名添加

    前提条件:已经有一个可用的etcd环境. 一.CoreDNS简介 CoreDNS是一个DNS服务器,和Caddy Server具有相同的模型:它链接插件.CoreDNS是云本土计算基金会启动阶段项目. ...