Java tutorial
/* Ce programme est un logiciel libre : vous pouvez le redistribuer ou le modifier selon les termes de la GNU General Public License tels que publis par la Free Software Foundation : votre choix, soit la version 3 de la licence, soit une version ultrieure quelle qu'elle soit. Ce programme est distribu dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE ; sans mme la garantie implicite de QUALIT MARCHANDE ou D'ADQUATION UNE UTILISATION PARTICULIRE. Pour plus de dtails, reportez-vous la GNU General Public License. Vous devez avoir reu une copie de la GNU General Public License avec ce programme. Si ce n'est pas le cas, consultez <http://www.gnu.org/licenses/>] */ package com.tunisbank.dao; import java.util.List; import org.hibernate.Criteria; import org.hibernate.SessionFactory; import org.hibernate.criterion.Restrictions; import org.hibernate.criterion.SimpleExpression; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; import org.springframework.transaction.annotation.Transactional; import com.tunisbank.entity.Compte; @Repository public class CompteDAO implements IDao<Compte> { @Autowired private SessionFactory sessionFactory; public Compte getById(int id) { return (Compte) sessionFactory.getCurrentSession().get(Compte.class, id); } @SuppressWarnings("unchecked") public Compte getBy(String model, String value) { Criteria criteria = sessionFactory.getCurrentSession().createCriteria(Compte.class); criteria.add(Restrictions.eq(model, value)); return (Compte) criteria.uniqueResult(); } @SuppressWarnings("unchecked") public List<Compte> getAll() { Criteria criteria = sessionFactory.getCurrentSession().createCriteria(Compte.class); criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); return criteria.list(); } public Compte save(Compte obj) { sessionFactory.getCurrentSession().save(obj); return obj; } public void update(Compte obj) { sessionFactory.getCurrentSession().merge(obj); } public void delete(int id) { Compte obj = getById(id); sessionFactory.getCurrentSession().delete(obj); } }