不调用更新方法的事务性保存
我有一个用@Transactional注释的方法。我从 Oracle 数据库中检索一个对象,更改一个字段,然后从该方法返回。我忘记保存对象,但发现数据库仍然更新。
应用语境
<tx:annotation-driven />
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
我的方法
@Transactional
public void myMethod(long id) {
MyObject myObj = dao.getMstAttributeById(id);
myObj.setName("new name");
//dao.update(myObj);
}
我的问题是为什么MyObject会持久化到数据库中?