我要更新日期时间等于
这是我的情况。
- selet对象。该对象已更新字段-datatime
- 调用网络api
- 如果更新相同,则更新(1)的同步状态字段。
这是为了防止在HTTP调用期间另一个任务更新后被覆盖。
这是我的代码。
Apply.java
public Date getUpdateDate() {
return updateDate;
}
....
UpdateBuilder<Apply, Integer> updateBuilder = applyDao.updateBuilder();
try {
if (apply.getUpdateDate() == null) {
updateBuilder
.where()
.eq(Apply.APPLY_SEQ_NO, apply.getApplySeqNo())
.and()
.isNull(Apply.UPDATE_DATE);
} else {
updateBuilder
.where()
.eq(Apply.APPLY_SEQ_NO, apply.getApplySeqNo())
.and()
.eq(Apply.UPDATE_DATE, apply.getUpdateDate());
}
updateBuilder.updateColumnValue(Apply.SYNC_STATE, newSyncState2);
updateBuilder.updateColumnValue(Apply.UPDATE_DATE, new Date());
affectedRows = updateBuilder.update();
ormlite的翻译如下。
update Apply set syncsate = 'S' where applyseqno = 1 and updatedate = ?
但是,结果总是失败的。
更新日期的值为2018-06-14 09:49:02.743000
我猜java.util.date与格式不匹配。
如何通过ormlite日期时间比较确切的样本日期时间?