package com.niit;
import java.util.Date;
import java.util.List;
import java.util.Set;
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 Users
* 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.niit.Users
* @author MyEclipse Persistence Tools
*/
public class UsersDAO extends HibernateDaoSupport implements IUsersDAO
{
private static final Log log = LogFactory.getLog(UsersDAO.class);
// property constants
public static final String NICKNAME = "nickname";
public static final String RELNAME = "relname";
public static final String SEX = "sex";
public static final String PASSWORD = "password";
public static final String ADDRESS = "address";
public static final String PHONE = "phone";
public static final String EMAIL = "email";
public static final String ZIP = "zip";
protected void initDao()
{
// do nothing
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#save(com.niit.Users)
*/
public void save(Users transientInstance)
{
log.debug("saving Users instance");
try
{
getHibernateTemplate().save(transientInstance);
log.debug("save successful");
}
catch (RuntimeException re)
{
log.error("save failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#delete(com.niit.Users)
*/
public void delete(Users persistentInstance)
{
log.debug("deleting Users instance");
try
{
getHibernateTemplate().delete(persistentInstance);
log.debug("delete successful");
}
catch (RuntimeException re)
{
log.error("delete failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findById(java.lang.Long)
*/
public Users findById(java.lang.Long id)
{
log.debug("getting Users instance with id: " + id);
try
{
Users instance = (Users) getHibernateTemplate().get(
"com.niit.Users", id);
return instance;
}
catch (RuntimeException re)
{
log.error("get failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByExample(com.niit.Users)
*/
public List findByExample(Users instance)
{
log.debug("finding Users instance by example");
try
{
List 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;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByProperty(java.lang.String, java.lang.Object)
*/
public List findByProperty(String propertyName, Object value)
{
log.debug("finding Users instance with property: " + propertyName
+ ", value: " + value);
try
{
String queryString = "from Users as model where model."
+ propertyName + "= ?";
return getHibernateTemplate().find(queryString, value);
}
catch (RuntimeException re)
{
log.error("find by property name failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByNickname(java.lang.Object)
*/
public List findByNickname(Object nickname)
{
return findByProperty(NICKNAME, nickname);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByRelname(java.lang.Object)
*/
public List findByRelname(Object relname)
{
return findByProperty(RELNAME, relname);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findBySex(java.lang.Object)
*/
public List findBySex(Object sex)
{
return findByProperty(SEX, sex);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByPassword(java.lang.Object)
*/
public List findByPassword(Object password)
{
return findByProperty(PASSWORD, password);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByAddress(java.lang.Object)
*/
public List findByAddress(Object address)
{
return findByProperty(ADDRESS, address);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByPhone(java.lang.Object)
*/
public List findByPhone(Object phone)
{
return findByProperty(PHONE, phone);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByEmail(java.lang.Object)
*/
public List findByEmail(Object email)
{
return findByProperty(EMAIL, email);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findByZip(java.lang.Object)
*/
public List findByZip(Object zip)
{
return findByProperty(ZIP, zip);
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#findAll()
*/
public List findAll()
{
log.debug("finding all Users instances");
try
{
String queryString = "from Users";
return getHibernateTemplate().find(queryString);
}
catch (RuntimeException re)
{
log.error("find all failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#merge(com.niit.Users)
*/
public Users merge(Users detachedInstance)
{
log.debug("merging Users instance");
try
{
Users result = (Users) getHibernateTemplate().merge(
detachedInstance);
log.debug("merge successful");
return result;
}
catch (RuntimeException re)
{
log.error("merge failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#attachDirty(com.niit.Users)
*/
public void attachDirty(Users instance)
{
log.debug("attaching dirty Users instance");
try
{
getHibernateTemplate().saveOrUpdate(instance);
log.debug("attach successful");
}
catch (RuntimeException re)
{
log.error("attach failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.niit.IUsersDAO#attachClean(com.niit.Users)
*/
public void attachClean(Users instance)
{
log.debug("attaching clean Users instance");
try
{
getHibernateTemplate().lock(instance, LockMode.NONE);
log.debug("attach successful");
}
catch (RuntimeException re)
{
log.error("attach failed", re);
throw re;
}
}
public static IUsersDAO getFromApplicationContext(ApplicationContext ctx)
{
return (IUsersDAO) ctx.getBean("UsersDAO");
}
}