Java tutorial
package com.lm.lic.manager.hibernate; import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.hibernate.LockMode; import org.springframework.context.ApplicationContext; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; /** * A data access object (DAO) providing persistence and search support for LmxLicensePricing entities. * Transaction control of the save(), update() and delete() operations can directly support Spring * container-managed transactions or they can be augmented to handle user-managed Spring transactions. Each of * these methods provides additional information for how to configure it for the desired type of transaction * control. * * @see com.lm.lic.manager.hibernate.LmxLicensePricing * @author Ibrahim Mustafa */ public class LmxLicensePricingDAO extends HibernateDaoSupport { private static final Log log = LogFactory.getLog(LmxLicensePricingDAO.class); public static final String CREATED_BY = "createdBy"; public static final String MODIFIED_BY = "modifiedBy"; @Override protected void initDao() { // do nothing } public void save(LmxLicensePricing transientInstance) { log.debug("saving LmxLicensePricing instance"); try { getHibernateTemplate().save(transientInstance); log.debug("save successful"); } catch (RuntimeException re) { log.error("save failed", re); throw re; } } public void delete(LmxLicensePricing persistentInstance) { log.debug("deleting LmxLicensePricing instance"); try { getHibernateTemplate().delete(persistentInstance); log.debug("delete successful"); } catch (RuntimeException re) { log.error("delete failed", re); throw re; } } public LmxLicensePricing findById(java.lang.Long id) { log.debug("getting LmxLicensePricing instance with id: " + id); try { LmxLicensePricing instance = (LmxLicensePricing) getHibernateTemplate() .get("com.lm.lic.manager.hibernate.LmxLicensePricing", id); return instance; } catch (RuntimeException re) { log.error("get failed", re); throw re; } } @SuppressWarnings("unchecked") public List<LmxLicensePricing> findByExample(LmxLicensePricing instance) { log.debug("finding LmxLicensePricing instance by example"); try { List<LmxLicensePricing> results = getHibernateTemplate().findByExample(instance); log.debug("find by example successful, result size: " + results.size()); return results; } catch (RuntimeException re) { log.error("find by example failed", re); throw re; } } @SuppressWarnings("unchecked") public List<LmxLicensePricing> findByProperty(String propertyName, Object value) { log.debug("finding LmxLicensePricing instance with property: " + propertyName + ", value: " + value); try { String queryString = "from LmxLicensePricing as model where model." + propertyName + "= ?"; return getHibernateTemplate().find(queryString, value); } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } } @SuppressWarnings("unchecked") public List<LmxLicensePricing> findByLicLife(Integer licLifeInDays) { String queryString = "from LmxLicensePricing as l where l.licLifeType.code = ?"; List<LmxLicensePricing> lmxPricings = getHibernateTemplate().find(queryString, licLifeInDays); return lmxPricings; } @SuppressWarnings("unchecked") public List<LmxLicensePricing> findByPrice(Double price) { String queryString = "from LmxLicensePricing as l where l.licLifeType.price = ?"; List<LmxLicensePricing> lmxPricings = getHibernateTemplate().find(queryString, price); return lmxPricings; } public List<LmxLicensePricing> findByCreatedBy(Object createdBy) { return findByProperty(CREATED_BY, createdBy); } public List<LmxLicensePricing> findByModifiedBy(Object modifiedBy) { return findByProperty(MODIFIED_BY, modifiedBy); } @SuppressWarnings("unchecked") public List<LmxLicensePricing> findAll() { log.debug("finding all LmxLicensePricing instances"); try { String queryString = "from LmxLicensePricing"; return getHibernateTemplate().find(queryString); } catch (RuntimeException re) { log.error("find all failed", re); throw re; } } public LmxLicensePricing merge(LmxLicensePricing detachedInstance) { log.debug("merging LmxLicensePricing instance"); try { LmxLicensePricing result = getHibernateTemplate().merge(detachedInstance); log.debug("merge successful"); return result; } catch (RuntimeException re) { log.error("merge failed", re); throw re; } } public void attachDirty(LmxLicensePricing instance) { log.debug("attaching dirty LmxLicensePricing instance"); try { getHibernateTemplate().saveOrUpdate(instance); log.debug("attach successful"); } catch (RuntimeException re) { log.error("attach failed", re); throw re; } } public void attachClean(LmxLicensePricing instance) { log.debug("attaching clean LmxLicensePricing instance"); try { getHibernateTemplate().lock(instance, LockMode.NONE); log.debug("attach successful"); } catch (RuntimeException re) { log.error("attach failed", re); throw re; } } public static LmxLicensePricingDAO getFromApplicationContext(ApplicationContext ctx) { return (LmxLicensePricingDAO) ctx.getBean("LmxLicensePricingDAO"); } }