私は MyBatis を使用しており、「作成」、「変更」されたすべてのテーブルに 2 つのフィールドを実装したいと考えています。どちらも日付フィールドです。挿入または更新時にこれらのフィールドを自動的に更新する方法はありますか? もちろん、マッピングを調整することはできますが、これを行うためのより一般的で DRY な方法があるかどうか疑問に思っていました。
12130 次
2 に答える
9
いいえ、mybatis には、SQL マップをコーディングして列を更新しない限り、これを自動的に行うメカニズムがありません。
1 つの代替手段は、データベース トリガーです。ただし、それをお勧めするかどうかは定かではありませんが、SQL マップでコーディングするだけです。
次のように SQL マップでコーディングできます。
<insert id="someInsert">
insert into dummy_table
(
SOME_COLUMN,
CREATED_DT
)
values
(
#{someValue},
sysdate
)
</insert>
また、
<update id="someUpdate">
update some_table
set some_column = #{someValue}, modified=sysdate
where some_id = #{someId}
</update>
于 2011-08-23T15:50:25.850 に答える