zoukankan      html  css  js  c++  java
  • Mybatis2——输入参数parameterType、Mybatis调用存储过程

    输入参数:parameterType(两种取值符号)
    1.类型为简单类型
    区别:
        (1) #{可以为任意值}
            ${vaue}--->标识符只能是value
        (2)#{}  自动给String类型加上‘’--->自动类型转换
            ${}  原样输出 --->适合于动态字段进行动态排序
        (3)#{}  防止sql注入
            ${}  不防止
    相同之处:
        (1)都可以获取对象的值(嵌套类型对象)
     
    2.对象类型 
        #{属性名}
        ${属性名}--->标识符是属性名,eg:stuno
     
    输入对象为HashMap:
        用map中key的值匹配 占位符#{name},如果匹配成功,则用map的value替代占位符。
     
    MyBaties调用存储过程
    <!--通过调用存储过程查询某年级的总人数  statementType="CALLABLE"
        输入参数必须为HashMap-->
        <select id="queryCountByGradeWithProcedure" statementType="CALLABLE" resultType="int" parameterType="HashMap">
            {
                call queryCountByGradeWithProcedure(
                    #{gName,jdbcType=VARCHAR,mode=in},
                    #{sCount,jdbcType=INTEGER,mode=out}
                )
            }
        </select>
    使用时,通过HashMap的put()方法传入输入参数的值,通过get()方法拿到输出参数的值。
    注意jar包的版本问题。
    <transactionManager type="JDBC"/>,增删改必须手工commit
  • 相关阅读:
    UVa-272-TEX Quotes
    UVa-10881-蚂蚁
    UVa-1339-古老的密码
    POJ-1328-放置雷达
    POJ-3190-分配畜栏
    Openjudge-2787-算24
    WHYZOJ-#47. 滑行的窗口(单调队列)
    2017年9月16日18:03:54
    WHYZOJ-#93. 暗黑破坏神(垃圾01背包)
    WHYZOJ-#95 大逃亡(二分+BFS)(好题!!!)
  • 原文地址:https://www.cnblogs.com/ghlz/p/12222798.html
Copyright © 2011-2022 走看看