基になるデータが同じであっても、パラメーターを異なる方法で定義する 2 つのプロシージャが oracle にあります。コードでは、整数として表します。
procedure GetByNum(..., vRegionID in number, ...)
procedure GetByInt(...., vRegionID in integer, ...)
Javaでは常にフィールドを整数として定義します(そしてdbでも)
public Integer getRegionID() {
return 100;
}
これを(Javaで)integer同じを使用して両方のプロシージャに渡す方法はありOracleTypes.*ますか? カスタムベースラッパーを使用して、org.springframework.jdbc.object.StoredProcedure両方を呼び出します。ストアド プロシージャの変更は現時点では許可されていないため、あとは Java を修正するだけです。
- あなたはprocに合格でき
getRegionIDますかOracleTypes.NUMBER?getByInt - を期待する
OracleTypes.INTEGERに渡すことができますか?getByNumin number - 別の魔法の方法?
これは単純に思えるかもしれませんが、このようにパラメーターを変更することは許可されていないと思います。それが真実ではないことを願っています!
編集:
- 働い
OracleTypes.INTEGERたに渡すために使用するprocedure ... (param in number) - これが環境固有のものかどうかはわかりませんが、
不測の問題を心配することなく新しいラッパーの使用を開始できるように、決定的な回答を期待しています。