zoukankan      html  css  js  c++  java
  • 05.MyBtais两种取值符号以及输入参数和输出参数

    输入参数:parameterType 两种取值符号的异同

    1.类型为简单类型(8个基本类型+string)

    不同点:

    a.#{任意值},${value} 其中的标识符只能是value

    b. #{}自动给String类型加上单引号(‘’) (自动类型转换)

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

    c.#{}可以防止sql注入

     ${}不防止sql注入

    相同点:

    都可以获取对象的值或者嵌套对象的值

    2.类型为对象类型:

    #{属性名}     ${属性名}

    输出参数:ResultType和ResultMap


    在属性名和字段名不一致时的解决办法:

    1.使用ResultMap:

     1   <select id="queryStudentById" parameterType="int" resultMap="student1">
     2     select * from student where sid = #{sid}
     3   </select>
     4   <resultMap type="student" id="student1">
     5       <id property="sid" column="sid" />
     6       <result property="sname" column="sname" />
     7       <result property="age" column="age" />
     8       <result property="sex" column="sex" />
     9       <association property="address" javaType="address">
    10           <result property="homeAddress" column="homeaddress" />
    11           <result property="schoolAddress" column="schooladdress" />
    12       </association>
    13   </resultMap>

    2.使用ResultType + HashMap解决:

    1  <insert id="insertStudentWithHashMap" parameterType="HashMap">
    2           insert into student (sname,age,sex,homeaddress,schooladdress) value (#{sname},#{age},#{sex},#{homeaddress},#{schooladdress})
    3   </insert>
    1 Map<String, Object> map = new HashMap<String, Object>();
    2 map.put("sname", "馒头");
    3 map.put("age", 22);
    4 map.put("sex", true);
    5 map.put("homeaddress", "杭州");
    6 map.put("schooladdress", "北京");
    7 studentMapper.insertStudentWithHashMap(map);
    1 //实体类  
        private int sno; 2 private String name; 3 private int age; 4 private Boolean sex; 5 private Address address;
  • 相关阅读:
    BZOJ4975: [Lydsy1708月赛]区间翻转( 博弈&逆序对)
    BZOJ4550: 小奇的博弈(NIMK博弈& 组合数& DP)
    BZOJ5301: [Cqoi2018]异或序列(莫队)
    BZOJ5450: 轰炸(水题,Tarjan缩点求最长路)
    BZOJ5125: [Lydsy1712月赛]小Q的书架(DP决策单调性)
    codevs 2495 水叮当的舞步
    bzoj 1086: [SCOI2005]王室联邦
    bzoj 3720: Gty的妹子树
    bzoj 1024: [SCOI2009]生日快乐
    bzoj 1085: [SCOI2005]骑士精神
  • 原文地址:https://www.cnblogs.com/man-tou/p/11336592.html
Copyright © 2011-2022 走看看