由於Hibernate集成了JDBC,所以在訪問數據庫時,與直接使用JDBC訪問數據庫相比,Hibernate在連接、訪問數據庫時的代碼減少了很大一大半。但由此而來也相應必須增加訪問Hibernate配置文件和SessionFactory、Session的打開、關閉的代碼。爲了解決以上相同代碼出現的複用問題,Hibernate對此又進行了再一次封裝,於是,幸運地出現了HibernateDaoSupport。因此,在使用HibernateDaoSupport模板對數據庫訪問時,更加方便、簡單,特別是進行簡單的增刪改查。
下面是我自己寫的一點代碼參考:
- /**
- * @author wifygoo
- * 對企業信息的簡單增刪改查。
- */
- public class EnterpriseDaoImpl extends HibernateDaoSupport implements
- EnterpriseDao {
- /**
- * @param Enterprise
- * 刪除某條企業信息。
- */
- public void del(Enterprise enterprise) {
- this.getHibernateTemplate().delete(enterprise);
- }
- /**
- * @return 所有的企業信息。
- * 查詢所有的企業信息。
- */
- @SuppressWarnings("unchecked")
- public List<Enterprise> findAllEnterprises() {
- String hql = "from Enterprise enterprise";
- return this.getHibernateTemplate().find(hql);
- }
- /**
- * @param Integer,企業編號。
- * @return 某個企業信息。
- * 通過企業編號查詢企業信息。
- */
- public Enterprise findEnterpriseById(Integer id) {
- return (Enterprise) this.getHibernateTemplate().load(Enterprise.class, id);
- }
- /**
- * @param Enterprise
- * 添加企業信息。
- */
- public void save(Enterprise enterprise) {
- this.getHibernateTemplate().save(enterprise);
- }
- /**
- * @param Enterprise
- * 修改企業信息。
- */
- public void update(Enterprise enterprise) {
- this.getHibernateTemplate().update(enterprise);
- }
- }
另一個實現功能差不多的封裝類是:HibernateTemplate。這裏不贅述。視自己愛好而使用。