我正在读另一个人的代码。我看到他没有提出任何明确的更新要求 DB
但它确实更新了实体。请检查下面 pseudo code
:
@Transactional(propagation = Propagation.REQUIRED, readOnly = false)
public void updateFoo(long fooId) {
// Get foo instance from DB, foo has status = 0
Foo foo = fooDAO.getFoo(fooId);
foo.setStatus(1);
// There is no call to DAO layer from here
}
我是从 My SQL
, foo
更新时没有任何 session.save(foo)
或者 session.update(foo)
通常,我会把这样的事情叫进来 FooDAO
层
sessionFactory.getCurrentSession().update(foo);
怎么可能?我怀疑 Transaction
自动 commit
pojo对象。请告诉我怎么做?为什么会有人这么做,这会让代码更难阅读吗?
暂无答案!
目前还没有任何答案,快来回答吧!