title: Transactional saves without calling update method
body: <p>I have a method annotated with @Transactional. I retrieve an object from my Oracle DB, change a field, and then return from the method. I forgot to save the object, but discovered that the database gets updated anyway.</p>
  
  <p>applicationContext</p>
  
  <pre><code>&lt;tx:annotation-driven /&gt;
  &lt;bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"&gt;
      &lt;property name="sessionFactory" ref="sessionFactory" /&gt;
  &lt;/bean&gt;
  </code></pre>
  
  <p>my method</p>
  
  <pre><code>@Transactional
  public void myMethod(long id) {
      MyObject myObj = dao.getMstAttributeById(id);
      myObj.setName("new name");
      //dao.update(myObj);
  }
  </code></pre>
  
  <p>my question is why does MyObject get persisted to the database?</p>