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才可以,有知道的求解。。。

浙公网安备 33010602011771号