一、常用的hibernate操作dao
- 第一種,通過繼承HibernateDaoSupport來操作√
- 第二種,通過HibernateTemplate來操作√
- 第三種,通過使用Hibernate的session來操作√(最靈活的)
- 第四種,直接寫JDBC來實現數據庫操作(沒用過)(太原始了,不推薦用)
二、四種常用方法介紹及配置:
1.繼承HibernateDaoSupport來操作:
spring為hibernate提供的工具類,其底層是通過HibernateTemplate來實現來數據庫的操作,但我覺得使用它的時候需要向每個Dao層sessionFactory感覺有點不方便
使用直接繼承,方法里面通過this.getHibernateTemplate()直接使用HibernateTemplate操作數據庫,有點繁瑣。
2. 通過HibernateTemplate來操作(推薦)
忽略那些報紅。。。
3. 通過使用Hibernate的session來操作
@Repositorypublic class UserDaoImpl implements UserDao { @Autowired private SessionFactory sessionFactory; @Override public void saveUser() { Session session = null; Transaction tx = null; try { session = sessionFactory.getCurrentSession(); //開啟事務 tx = session.beginTransaction(); //添加 User user = new User(); user.setAddress("American"); user.setUsername("老王"); session.save(user); tx.commit(); }catch(Exception e) { e.printStackTrace(); //回滾事務 tx.rollback(); }finally { session.close(); } } }