mybatis调用sqlserver存储过程出错

最开始是酱紫的:

<select id="getXY" parameterType="String" resultType="XY"  statementType="CALLABLE">
        exec Wx_SignIn_getXY '#{WxCode}'
</select>

Preparing: exec Wx_SignIn_getXY '?' 

### The error may exist in file [E:\WM-Member1\wechat\wm-dao\target\classes\sqlmap\XY.xml]
### The error may involve com.wm.dao.XYDao.getXY-Inline
### The error occurred while setting parameters
### SQL: exec Wx_SignIn_getXY '?'
### Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 索引 1 超出范围。

随将其改:

<select id="getXY" parameterType="String" resultType="XY"  statementType="CALLABLE">
        exec Wx_SignIn_getXY '${WxCode}'
</select>

org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'WxCode' in 'class java.lang.String'

好吧,继续改:

<select id="getXY" parameterType="String" resultType="XY"  statementType="CALLABLE">
        exec Wx_SignIn_getXY '${_parameter}'
</select>

Preparing: exec Wx_SignIn_getXY 'U_BJ_245625'

好了,成功调用

好神奇,叫什么名字有那么重要?非得改成_parameter才可以,有知道的求解。。。

posted @ 2015-08-17 16:18  暗夜心慌方  阅读(999)  评论(0)    收藏  举报