zoukankan      html  css  js  c++  java
  • Mybatis配置文件中Select元素标签输入参数有多少种输入方式呢?

    Mybatis配置文件中Select元素标签输入参数有多少种输入方式呢?

    如需要跟多资料请点击下方图片⬇(扫码加好友→备注66,不备注拒绝添加哦)
    image

    Select元素标签输入方式

    • 基本数据类型
    • 字符串类型
    • Map 类型
    • Java bean 类型

    案例实操

    输入参数分类

    基本类型,字符串,java bean,map,数组(删除操作时体现),List(添加时体现)等每种情况定义如下

    基本数据类型

    Statement 定义

    <!-- 查询客户-->
    <select id="queryCustomerById" parameterType="int" resultType="com.xxx.pojo.Customer">
        SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  id=#{id}
    </select>
    

    CustomerDao方法定义

    Customer queryCustomerById(int id);
    

    字符串类型

    Statement 定义

    <!-- 查询客户-->
    <select id="queryCustomerByName" parameterType="string" resultType="com.xxx.pojo.Customer">
        SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  user_name=#{userName}
    </select>
    

    Dao 方法定义

    Customer queryCustomerById(int id);
    

    Map 类型

    Statement 定义

    <!-- 输入参数为 map 类型 -->
    <!-- 查询客户-->
    <select id="queryCustomerByName" parameterType="map" resultType="com.xxx.pojo.Customer">
        SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  user_name=#{userName}
    </select>
    

    Dao 方法定义

    Customer queryCustomerByName(Map<String,Object> userName);
    

    Java bean 类型

    Statement 定义

     <!-- 输入参数为 java bean 类型 -->
    <select id="queryCustomerByParams" parameterType="customer" resultType="customer">
        SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  user_name=#{userName}
    </select>
    

    Dao方法定义

    Customer queryCustomerByParams(Customer customer);
    

    扩展

    结果类型分类

    基本数据类型,字符串,JavaBean,Map,List等

    基本数据类型

    Statement定义

    <!-- 结果类型为基本数据 -->
    <select id="queryCustomerAccount" resultType="int">
        select count(1) from yg_customer
    </select>
    

    Dao 方法定义与对应实现

    int queryCustomerAccount();
    

    字符串类型

    Statement定义

    <!-- 结果类型为字符串 -->
    <select id="queryCustomerNameById" resultType="string" parameterType="int">
        select user_name from yg_customer WHERE id=#{id}
    </select>
    

    Dao 方法定义

    String queryCustomerNameById(int id);
    

    Java Bean

    Statement定义

    <select id="queryUserByUser" parameterType="user"  resultType="user">
    
        select id,user_name as userName,user_pwd as userPwd from user where id=#{id}
    
    </select>
    

    List

    Statement 定义

    <resultMap type="user" id="user_map">
        <result column="id" property="id"/>
        <result column="user_name" property="userName"/>
        <result column="user_pwd" property="userPwd"/>
    </resultMap>
    <sql id="user_column">
        id,user_name,user_pwd
    </sql>
    <select id="queryUserNyName2" parameterType="string" resultMap="user_map">
        select <include refid="user_column"/>
        from user where user_name like concat("%",#{userName},"%")
    </select>
    

    Map 类型数据

    Statement 定义

    <!-- 结果类型为map -->
    
    <select id="queryUserByIdReturnMap"  parameterType="int" resultType="map">
    
        select id,user_name as userName,user_pwd as userPwd from user where id=#{id}
    
    </select>
    

    ->

    ~~~

  • 相关阅读:
    【】Libevent源码解析
    sftp使用
    世界boss设计
    记一次薪酬谈判的教训 .
    一些常用的文件操作代码
    一位总经理的辞职信,以及回复
    JMeter安装、文档参考
    Charles——charles代理菜单proxy总结——external proxy 外部代理设置
    JDK安装
    Charles——charles常用功能——重定向
  • 原文地址:https://www.cnblogs.com/lezijie/p/13719865.html
Copyright © 2011-2022 走看看