📄 hibernatequerymanager.java
字号:
package com.ejsun.entapps.core.persistence.impl;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.orm.hibernate.support.HibernateDaoSupport;
import com.ejsun.entapps.core.persistence.QueryManager;
/**
* @author Quake Wang
* @create 2004-3-7
* @version $Revision: 1.2 $
*/
public class HibernateQueryManager extends HibernateDaoSupport implements QueryManager{
private static final Log log = LogFactory.getLog(HibernateQueryManager.class);
public Object loadById(Class entity, long id) {
return getHibernateTemplate().get(entity, new Long(id));
}
public Object loadByName(Class namedEntity, String name) {
List result = getHibernateTemplate().find("from " + namedEntity.getName() + " where name = ? ", name);
if(result != null && result.size() > 0){
if(result.size() == 1) {
return result.get(0);
}else {
log.error("more than one object using the name: " + name + " with namedEntity: " + namedEntity.getName());
//TODO throw exception or return null?
}
}
return null;
}
public Object loadByNamedQuery(String query, Object obj) {
List result = findByNamedQuery(query, obj);
if(result != null && result.size() > 0){
if(result.size() == 1) {
return result.get(0);
}else {
log.error("got more than one object using the query: " + query + " with parameter: " + obj);
//TODO throw exception or return null?
}
}
return null;
}
public List findAll(Class entity) {
return getHibernateTemplate().find("from " + entity.getName());
}
public List findByNamedQuery(String namedQuery) {
return getHibernateTemplate().findByNamedQuery(namedQuery);
}
public List findByNamedQuery(String query, Object parameter) {
return getHibernateTemplate().findByNamedQuery(query, parameter);
}
public List findByNamedQuery(String query, Object[] parameters) {
return getHibernateTemplate().findByNamedQuery(query, parameters);
}
public List find(String query) {
return getHibernateTemplate().find(query);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -