com.negocio.dao.ProductosDaoImpl.java Source code

Java tutorial

Introduction

Here is the source code for com.negocio.dao.ProductosDaoImpl.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.negocio.dao;

import com.negocio.abs.AbstractDao;
import com.negocio.inter.ProductosDao;
import com.negocio.model.Producto;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Hibernate;
import org.hibernate.criterion.Restrictions;
import org.springframework.stereotype.Repository;

/**
 *
 * @author STM1
 */
@Repository("productosDao")
public class ProductosDaoImpl extends AbstractDao<Integer, Producto> implements ProductosDao {

    public List<Producto> listarProducto() {
        Criteria crit = createEntityCriteria();
        crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
        List<Producto> productos = (List<Producto>) crit.list();
        return productos;
    }

    public Producto buscarPorCodigo(String codigo) {
        Criteria crit = createEntityCriteria();
        crit.add(Restrictions.eq("prodCod", codigo));
        Producto producto = (Producto) crit.uniqueResult();
        if (producto != null) {
            Hibernate.initialize(producto.getProdId());
        }
        return producto;
    }

    public List<Producto> listarPorMarca(int idMarca) {
        Criteria crit = createEntityCriteria();
        crit.add(Restrictions.eq("prodMarcaId", idMarca));
        crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
        List<Producto> productos = (List<Producto>) crit.list();
        return productos;
    }

    public void grabarProducto(Producto producto) {
        persist(producto);
    }

    public void actualizarProducto(Producto producto) {
        getSession().update(producto);

    }

}