package org.infosec.ismp.manager.winsensor.dao.impl; import java.util.List; import org.apache.commons.lang.StringUtils; import org.hibernate.Criteria; import org.hibernate.criterion.Order; import org.hibernate.criterion.Restrictions; import org.infosec.ismp.manager.winsensor.dao.AgentDao; import org.infosec.ismp.manager.winsensor.entity.AgentBO; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; /** * @author Rocky * @version create time: Dec 23, 2010 4:26:03 PM * */ public class AgentDaoImpl extends HibernateDaoSupport implements AgentDao { @Override public void addAgent(AgentBO agent) { getHibernateTemplate().save(agent); } @Override public void updateAgent(AgentBO agent) { getHibernateTemplate().update(agent); } @Override public void deleteAgent(AgentBO agent) { getHibernateTemplate().delete(agent); } @SuppressWarnings("unchecked") @Override public List<AgentBO> getAllAgent() { Criteria criteria = getSession().createCriteria(AgentBO.class); criteria.addOrder(Order.desc("createTime")); return criteria.list(); } @SuppressWarnings("unchecked") @Override public AgentBO findByAgentId(String agentId) { if (StringUtils.isBlank(agentId)) { return null; } Criteria criteria = getSession().createCriteria(AgentBO.class); criteria.add(Restrictions.eq("agentId", agentId)); criteria.addOrder(Order.desc("createTime")); List<AgentBO> agents = criteria.list(); if (agents.size() > 0) { return agents.get(0); } return null; } }