[DAO-106] [seasar-s2dao-dev:316]ストアドへの型変換にメタデータではなくValueTypeを使用するプロシージャ実行をサポートしました。 Created: 2007-07-16 Updated: 2007-09-01 Resolved: 2007-09-01 |
|
Status: | Resolved |
Project: | S2Dao |
Component/s: | None |
Affects Version/s: | 1.0.44 |
Fix Version/s: | 1.0.47-RC1 |
Type: | Improvement | Priority: | Major |
Reporter: | manhole | Assignee: | taedium |
Resolution: | Fixed | Votes: | 0 |
Labels: | None |
Description |
「[seasar-s2dao-dev:316] BLOB型を引数にもつストアドが動かない」で報告いただいたように、 |
Comments |
Comment by taedium [ 2007-09-01 ] |
新規のPROCEDURE_CALLアノテーションを使用した場合に、DBのメタデータではなくValueTypeを使うようにしました。 |
Comment by taedium [ 2007-08-25 ] |
b案で対応しましたが、不完全です。 もともと、やりたいことは「Javaの型 -> ValueTypeを使ってJDBCの型に変換」ということなのですが ということで現状の仕様ままでは対応しきれないので、新しいストアド対応のSqlCommandを作成しようと思います。 |
Comment by taedium [ 2007-07-20 ] |
aの案ですが、変換処理の統一を考えた場合、他のgetValueメソッドにあわせてこれが必要になるのかなと思います getValue(CallableStatement cs, int parameterIndex) setの方はおっしゃるとおりValueType#bindValueが使えますね。 |
Comment by manhole [ 2007-07-20 ] |
いきなり割れましたね^^; a案の方、書き間違えたことに気づきました。ValueTypeに追加するのは、 void registerOutParameter(CallableStatement cs, int index, Object value) の1メソッドですね。 |
Comment by taedium [ 2007-07-19 ] |
aに+1です。 |
Comment by higa [ 2007-07-19 ] |
bに+1 |
Comment by manhole [ 2007-07-19 ] |
ValueType経由での型を使用するには、現状のAPIを変更する必要がありそうなので相談させてください。 ストアドを実装する際に
を行う必要があり、現状はメタデータから取得したsqlTypeを使用しているのですが、今度は引数の型からsqlTypeを取得することになります。 その実現手段として下記2案があるかと思うのですが、どうでしょうか?
|