import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
*/
public abstract class AbstractGenericDAOImpl<T, PK extends Serializable>
extends HibernateDaoSupport implements GenericDAO<T, PK> {
*/
public abstract class AbstractGenericDAOImpl<T, PK extends Serializable>
extends HibernateDaoSupport implements GenericDAO<T, PK> {
* @return an object found by the given key
* @see Session#get(Class, Serializable)
*/
* @return an object found by the given key
* @see Session#get(Class, Serializable)
*/
public T get(final PK id) {
return (T) getSession().get(getType(), id);
}
public T get(final PK id) {
return (T) getSession().get(getType(), id);
}
public T findByCriteria(final Criterion aCondition) {
return (T) getSession().createCriteria(getType()).add(aCondition)
.uniqueResult();
public T findByCriteria(final Criterion aCondition) {
return (T) getSession().createCriteria(getType()).add(aCondition)
.uniqueResult();
* a result list order. Null is ignored and in such case the result list is unordered.
* @return an ordered list of all objects of the considered type T
*/
* a result list order. Null is ignored and in such case the result list is unordered.
* @return an ordered list of all objects of the considered type T
*/
public List<T> getAll(final Order... anOrder) {
Criteria aCriteria = getSession().createCriteria(getType());
for (Order order : anOrder) {
public List<T> getAll(final Order... anOrder) {
Criteria aCriteria = getSession().createCriteria(getType());
for (Order order : anOrder) {
public List<T> getFilteredList(final DetachedCriteria aDetachedCriteria) {
return aDetachedCriteria.getExecutableCriteria(getSession()).list();
}
public List<T> getFilteredList(final DetachedCriteria aDetachedCriteria) {
return aDetachedCriteria.getExecutableCriteria(getSession()).list();
}
public <DTO> List<DTO> getFilteredDTOList(
final DetachedCriteria aDetachedCriteria) {
return aDetachedCriteria.getExecutableCriteria(getSession()).list();
public <DTO> List<DTO> getFilteredDTOList(
final DetachedCriteria aDetachedCriteria) {
return aDetachedCriteria.getExecutableCriteria(getSession()).list();
public List<T> getFilteredList(final Criterion aCondition) {
return getSession().createCriteria(getType()).add(aCondition).list();
}
public List<T> getFilteredList(final Criterion aCondition) {
return getSession().createCriteria(getType()).add(aCondition).list();
}
* a result list order. Null is ignored and in such case the result list is unordered.
* @return a list of objects filtered according to the given criteria
*/
* a result list order. Null is ignored and in such case the result list is unordered.
* @return a list of objects filtered according to the given criteria
*/
public List<T> getFilteredList(final Criterion aCondition,
final Order... anOrder) {
Criteria aCriteria = getSession().createCriteria(getType()).add(
public List<T> getFilteredList(final Criterion aCondition,
final Order... anOrder) {
Criteria aCriteria = getSession().createCriteria(getType()).add(
* a result list order. Null is ignored and in such case the result list is unordered.
* @return a list of objects filtered according to the given criteria
*/
* a result list order. Null is ignored and in such case the result list is unordered.
* @return a list of objects filtered according to the given criteria
*/
public List<T> getFilteredList(final String joinField,
final Criterion aCondition, final Order... anOrder) {
Criteria aCriteria = getSession().createCriteria(getType());
public List<T> getFilteredList(final String joinField,
final Criterion aCondition, final Order... anOrder) {
Criteria aCriteria = getSession().createCriteria(getType());