[Seasar-user:14650] Timestampによる排他制御について
紀 洪森
[E-MAIL ADDRESS DELETED]
2008年 6月 11日 (水) 19:11:46 JST
お世話になっております。紀洪森と申します。
s2dao 1.0.47
S2Daoで、自動的に生成するSQLを利用して、排他制御はOKです。
しかし、自分の更新SQLを利用する場合は、排他制御が無効になります。
(NotSingleRowUpdatedRuntimeExceptionが投げられません、DBが更新されません)
どのようにすればいいでしょうか。教えていただければありがたいです。
@Bean(table = "usod_m_custom_mail", timeStampProperty = "timestamp")
public class UsodMCustomMailEntity extends BaseEntity {
@Column("template_id")
public String templateId;
@Column("template_name")
public String templateName;
@Column("description")
public String description;
@Column("mail_from")
public String mailFrom;
@Column("mail_to")
public String mailTo;
...省略...
@Column("last_update_date")
public Timestamp timestamp;
}
@S2Dao(bean = UsodMCustomMailEntity.class)
public interface UsodMCustomMailDao extends BaseDao {
@Arguments("entity")
public int update(UsodMCustomMailEntity entity);
}
UsodMCustomMailDao_update.sql:
UPDATE usod_m_custom_mail
SET template_name = /*entity.templateName*/,
description = /*entity.description*/,
last_update_date = current_timestamp
WHERE template_id = /*entity.templateId*/
AND last_update_date = /*entity.timestamp*/
以上 宜しくお願いいたします。
Seasar-user メーリングリストの案内