Modelo.TipoDAO.java Source code

Java tutorial

Introduction

Here is the source code for Modelo.TipoDAO.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 Modelo;

import Mapeo.Tipo;
import java.util.LinkedList;
import java.util.List;
import org.hibernate.Hibernate;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;

/**
 * @author Mixbaal Jun Software - Ingenieria de Software, 2016 FCiencias, UNAM
 * @version 1.0
 * Clase para poder hacer cambios en la base con respecto al tipo.
 */
public class TipoDAO {
    //Atributo privado para conectarse con la base de datos
    private SessionFactory sessionFactory;

    /**
     * Mtodo que inicializa la sesin con la base de datos
     * @param sessionFactory 
     */
    public void setSessionFactory(SessionFactory sessionFactory) {
        this.sessionFactory = sessionFactory;
    }

    /**
     * Mtodo que guarda a un tipo en la base de datos
     * @param tipo 
     */
    public void guardar(Tipo tipo) {

        Session session = sessionFactory.openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();

            session.persist(tipo);

            tx.commit();
        } catch (Exception e) {
            if (tx != null) {
                tx.rollback();
            }
            e.printStackTrace();
        } finally {
            session.close();
        }

    }

    /**
     * Mtodo que actualiza un tipo en la base de datos
     * @param tipo 
     */
    public void actualizar(Tipo tipo) {

        Session session = sessionFactory.openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();

            session.update(tipo);

            tx.commit();
        } catch (Exception e) {
            if (tx != null) {
                tx.rollback();
            }
            e.printStackTrace();
        } finally {
            session.close();
        }

    }

    /**
     * Mtodo que elimina un tipo en la base de datos
     * @param tipo 
     */
    public void eliminar(Tipo tipo) {

        Session session = sessionFactory.openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();

            session.delete(tipo);

            tx.commit();
        } catch (Exception e) {
            if (tx != null) {
                tx.rollback();
            }
            e.printStackTrace();
        } finally {
            session.close();
        }

    }

    /**
     * Mtodo que regresa el tipo correspondiente que con el id que se pasa
     * como parmetro
     * @param idTipo
     * @return 
     */
    public Tipo getTipo(long idTipo) {
        Tipo tipo = null;
        Session session = sessionFactory.openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();
            tipo = (Tipo) session.get(Tipo.class, idTipo);
            tx.commit();
        } catch (Exception e) {
            if (tx != null) {
                tx.rollback();
            }
            e.printStackTrace();
        } finally {
            session.close();
        }
        return tipo;
    }

}