title: Do @Transactional annotated methods wait for a successful commit in Spring?
body: <p>When using a <code>@Transactional</code> annotated method in Spring, is the returning of the annotated method synchronized to the successful commit of the underlying database transaction?</p>
  
  <p>(This is assuming that the transaction will in fact commit after returning, which might not be the case depending on the selected propagation method.)</p>
  
  <p>If waiting for a commit is not the default behavior, is there any way to enable it, either via configuration or otherwise?</p>
  
  <p>The motivation for my question is that I would like to implement a reliable "store and forward"-type endpoint which only returns a response to the client <em>after</em> the effects of the call have been committed to stable storage. Is this possible with <code>@Transactional</code> at all?</p>