Я разрабатывал с использованием spring-boot и mysql (8.0.15 для win64).Я написал и выполнил обработку для вызова хранимой процедуры mysql в mybatis (3.5.0), но number Параметр номер 3 не является параметром OUT;вложенным исключением является java.sql.SQLException 」отображается, и это не работает хорошо.Пожалуйста, дайте мне знать, если есть какие-либо проблемы с тем, как написать программу или как использовать mybatis.
■ хранимая процедура (mysql)
CREATE PROCEDURE testSP(IN id TEXT,IN name TEXT,OUT out0 INTEGER,OUT out1 INTEGER)
BEGIN
SET out0 = 0;
SET out1 = 0;
END;
■ Result.java
public class Result{
private int out0;
private int out1;
public int getOut0(){
return out0;
}
public void setOut0(int out0){
this.out0 = out0;
}
public int getOut1(){
return out1;
}
public void setOut1(int out1){
this.out1 = out1;
}
}
■ Dao
public interface testDao{
public Result testSP(String id,String name);
}
■ xml (sql query)
<?xml version>.....
<select id ="testSP" resultType="Result" statementType="CALLABLE">
{call testSP(
#{id,mode=IN,jdbcType=VARCHAR},
#{name,mode=IN,jdbcType=VARCHAR},
#{out0,mode=OUT,jdbcType=INTEGER},
#{out1,mode=OUT,jdbcType=INTEGER}
)
}
</select>
....
■ testcode
testDao testdao = new testDao();
System.out.println(testdao.testSP("testid","testname").getOut0());
System.out.println(testdao.testSP("testid","testname").getOut1());