title: spring transaction of JdbcTemplate/HibernateTemplate and HibernateDaoSupport/JdbcDaoSupport
body: <p>How transaction is controlled while using <code>JdbcTemplate</code>/<code>HibernateTemplate</code>and <code>HibernateDaoSupport</code>/<code>JdbcDaoSupport</code>? I used to check source code and didn't find where the transaction is controlled by <code>JdbcTemplate</code>/<code>HibernateTemplate</code> and <code>HibernateDaoSupport</code>/<code>JdbcDaoSupport</code>. <br>
  And In source code <code>HibernateDaoSupport</code>/<code>JdbcDaoSupport</code> is using <code>JdbcTemplate</code>/<code>HibernateTemplate</code>, what's the role of <code>HibernateDaoSupport</code>/<code>JdbcDaoSupport</code> and what's the role of <code>JdbcTemplate</code>/<code>HibernateTemplate</code>?<br>
  Why do we use <code>JdbcTemplate</code>/<code>HibernateTemplate</code> and <code>HibernateDaoSupport</code>/<code>JdbcDaoSupport</code>? It seems all sample code is using them. What should I use if I don't want to use them, such as only using spring + hibernate?<br>
  If I'm using <code>JdbcTemplate</code>/<code>HibernateTemplate</code> and <code>HibernateDaoSupport</code>/<code>JdbcDaoSupport</code>, do I still need to config transaction proxy in xml? If I still need to config transaction proxy in xml, it means it's ok for me to put both <code>getHibernateTemplate().saveOrUpdate(user)</code>and  <code>getHibernateTemplate().saveOrUpdate(order)</code> together, and they're invoked in the same transaction, is this right?</p>