sql >> Database teknologi >  >> RDS >> Oracle

kan ikke modtage ud parameter fra oracle procedure udført af mybatis

Jeg fandt løsningen. Kort skal være bruger i stedet for to parametre i canCustomerSubscribe-metoden.

 void canCustomerSubscribe(Map<String,Object> params);

mybatis xml-indhold:

<select id="canCustomerSubscribe" parameterType="java.util.HashMap" statementType="CALLABLE">
    CALL wallet.pkg_wallet_validation.can_customer_subscribe(
    #{msisdn, jdbcType=VARCHAR, javaType=java.lang.String, mode=IN},
    #{responseCode,jdbcType=NUMERIC, javaType=java.lang.Integer, mode=OUT})
</select>

(Jeg er nødt til at tilføje kommaer mellem argumentattributter)

kalder det fra abonnementstjenestemetoden:

public void subscribe(String msisdn) throws InvalidArgumentException {
    Map<String, Object> params = new HashMap<String, Object>();
    params.put("msisdn", msisdn);
    params.put("responseCode", null);
    subscriberMapper.canCustomerSubscribe(params);
    System.out.println(params.get("responseCode"));
}



  1. Mac OS X - EnvironmentError:mysql_config ikke fundet

  2. Sådan fungerer ADDTIME() i MariaDB

  3. Redundante data i opdateringserklæringer

  4. Sådan fungerer TRY_CONVERT() i SQL Server