📄 basehibernatedao.java
字号:
package com.xfaccp.bookonline.hib.dao.base;
import java.io.Serializable;
import org.hibernate.LockMode;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.xfaccp.bookonline.hib.dto.base.IBaseHibernateDTO;
import com.xfaccp.bookonline.hib.util.HibernateSessionFactory;
/**
* Data access object (DAO) for domain model
*
* @author MyEclipse - Hibernate Tools
*/
public class BaseHibernateDAO implements IBaseHibernateDAO {
/**
*
*/
private static final long serialVersionUID = 1L;
public Session getSession() {
return HibernateSessionFactory.getSession();
}
public boolean save(IBaseHibernateDTO transientInstance) {
Session session = this.getSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
Serializable se = session.save(transientInstance);
tx.commit();
if (se != null) {
return true;
}
} catch (Exception re) {
if (tx != null)
tx.rollback();
re.printStackTrace();
return false;
}
return false;
}
public void delete(IBaseHibernateDTO persistentInstance) {
Session session = this.getSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.delete(persistentInstance);
tx.commit();
} catch (Exception re) {
if (tx != null) {
tx.rollback();
}
re.printStackTrace();
}
}
public IBaseHibernateDTO merge(IBaseHibernateDTO detachedInstance) {
try {
IBaseHibernateDTO result = (IBaseHibernateDTO) getSession().merge(
detachedInstance);
return result;
} catch (RuntimeException re) {
throw re;
}
}
public void attachDirty(IBaseHibernateDTO instance) {
try {
getSession().saveOrUpdate(instance);
} catch (RuntimeException re) {
throw re;
}
}
public void attachClean(IBaseHibernateDTO instance) {
try {
getSession().lock(instance, LockMode.NONE);
} catch (RuntimeException re) {
throw re;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -