ようなコードを書くと、同じ値が返されてしまう。サンプルはこんな感じ。
<select id="nextId" resultType="Long"> select nextval( #{name} ) as value </select>
以下のようにflushCache="true"を付けると、ローカルキャッシュがクリア
されるようで、2回目の取得処理でもSQLが実行され違う値が取得できる。
<select id="nextId" resultType="Long" flushCache="true">
select nextval( #{name} ) as value
</select>
別にシーケンスに限ったことではなく、通常のSELECTのSQLでも
同じ動作になるみたい。
0 件のコメント:
コメントを投稿