zoukankan      html  css  js  c++  java
  • mybatis总结--传参和返回值的几种类型

    首先讨论传入参数的几种类型:

    传入单个参数时:

      只有一个情形:

        接口:

        映射文件:

                  不管传入的是基本数据类型的包装类还是String类型,sql中的形参名不管是否和接口中的形参名相同,都可以自动识别后对应上。Mybatis对于单个参数不会做特殊处理,可以用任意参数名来接受实参

    传入多个参数时:

      1-按照顺序传参

        接口:

        映射文件:

        这里连parameterType属性都没有写,其中sql中的形参名必须写成” arg+索引位置”的形式,或者” param+索引位置”的形式。

        Mybatis对于传入的多个参数会做特殊处理,即把他们封装成一个map,其中的内容是key:param1....paramN,而对应的value值就是传入的参数值,#{}就是就是从map中获取指定的key的value,即#{param1},#{param2}等。

      2-使用@Param注解

        接口:

                  映射文件:

        映射文件sql中的形参名必须和@Param注解的命名一样。

      3-实例对象

                  接口:

        映射文件:

        控制器:

        注意:   

          其实也可以用实体对象只传一个参数。

          Sql中的形参名必须和实体类中的成员属性名一致

          在进行查询操作时,一些没有用到的的字段在实体类对象中可以忽略掉、不初始化赋值,

          在进行新增操作时,自增长、默认的、或者不想进行赋值的字段可以直接用null代替;

      4-Map传参

        接口:

        映射文件:

        控制器:

        注意:参数类型是map,这里写成了java.util.Map

      5-List

        接口:

        映射文件:

        控制器:

      6-数组传参

        接口:

        映射文件:

        控制器:

    返回值的几种类型

     

    直接参考该博文:https://www.cnblogs.com/ye-feng-yu/p/10987587.html

     

    ——本文引用整理了许多博客博主文章中的例子,具体来源已经记不清。未作标注,敬请谅解。

     

  • 相关阅读:
    51 Nod 1068 Bash游戏v3
    51 Nod Bash 游戏v2
    51 Nod 1073 约瑟夫环
    UVA 12063 Zeros and ones 一道需要好好体会的好题
    51 Nod 1161 Partial sums
    2018中国大学生程序设计竞赛
    UVA 11971 Polygon
    UVA 10900 So do you want to be a 2^n-aire?
    UVA 11346 Possibility
    python with as 的用法
  • 原文地址:https://www.cnblogs.com/tangshun100/p/13344730.html
Copyright © 2011-2022 走看看