MyBatis-Improper inline parameter map format. Should be: #{propName,attr1=val1,attr2=val2}

2015-12-4 diaba ibatis

使用mybatis框架实现数据持久化时,出现Improper inline parameter map format.  Should be: #{propName,attr1=val1,attr2=val2}错误,

异常产生代码


数据库表主键ID类型为int,Auto increment类型,对应的sqlMap中设置为:



    <insert id="insert" >
    <![CDATA[
        INSERT INTO TableName (
	        ID  ,
	        ...
        ) VALUES (
        	#{id, jdbcType=INT UNSIGNED} ,
        	...
        )
    ]]>
    </insert>

其中设置的值jdbcType=INT UNSIGNED,导致上述错误,需要设置为:


    <insert id="insert" >
    <![CDATA[
        INSERT INTO TableName (
	        ID  ,
	        ...
        ) VALUES (
        	#{id, jdbcType=BIGINT} ,
        	...
        )
    ]]>
    </insert>

上述问题解决。


在网上查得的解决方案是:

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.BuilderException: Improper inline parameter map format.  Should be: #{propName,attr1=val1,attr2=val2}

  <insert id="insertXXOrder" parameterType="yyOrder">     insert into XX_ORDER(   。。。,   MX_NOTIFY_URL   )  values(   。。。,   #{mxNotifyUrl,jdbcType VARCHAR}  )   分析:  mybatis规范写法:“#{propName,attr1=val1,attr2=val2}”,“=”号左右两边均无空格

因此:  “#{mxNotifyUrl,jdbcType = VARCHAR}”正确写法:“#{mxNotifyUrl,jdbcType=VARCHAR}”


(完)



标签: mybatis Improper inline

评论:

bqwrhszmo
2016-09-18 16:24
MyBatis-Improper inline parameter map format.  Should be: #{propName,attr1=val1,attr2=val2} - 韭菜园
bqwrhszmo http://www.g96t78s8o533v35l5buw29m7a7fzcys4s.org/
<a href="http://www.g96t78s8o533v35l5buw29m7a7fzcys4s.org/">abqwrhszmo</a>
[url=http://www.g96t78s8o533v35l5buw29m7a7fzcys4s.org/]ubqwrhszmo[/url]

发表评论:

Powered by emlog 京ICP备15045175号-1 Copyright © 2022