Java tutorial
/* * 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 co.com.siscomputo.administracion.logic; import co.com.siscomputo.administracion.entites.ObjetoRetornaEntity; import co.com.siscomputo.administracion.persistencia.TiposDocumentalesEntity; import co.com.siscomputo.conexion.HibernateUtil; import java.util.ArrayList; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; /** * * @author LENOVO */ public class TiposDocumentalesLogic { private Session sesion;//Variable de la sesin y conexin de la base de datos private Transaction tx;//Variable que almacena las consultas y las transacciones de la base de datos /** * Metodo que establece la conexin a la base de datos, previa validacin de * que la sesin no exista o este nula * * @throws HibernateException */ private String initOperation() { String retorno; try { if (sesion == null) { sesion = HibernateUtil.getSessionFactory().openSession(); tx = sesion.beginTransaction(); } retorno = "Ok"; } catch (Error e) { retorno = "Error Conexin Hibernate " + e; } return retorno; } /** * Mtodo para ingresar un TipoDocumental * @param tiposd * @return */ public TiposDocumentalesEntity ingresaTipoDocuemtal(TiposDocumentalesEntity tiposd) { try { String validaConexion = initOperation(); if (!"Ok".equalsIgnoreCase(validaConexion)) { tiposd.setNumeroRespuesta(3); tiposd.setTrazaRespuesta("Error de Conexin " + validaConexion); } else { tiposd.setIdTipoDocumental(maxTiposDocuemntales()); sesion.save(tiposd); tx.commit(); tiposd.setTrazaRespuesta("Insercin de Tipos Documentales Exitosa"); tiposd.setNumeroRespuesta(19); } } catch (Exception e) { e.printStackTrace(); tiposd = new TiposDocumentalesEntity(); tiposd.setNumeroRespuesta(0); tiposd.setTrazaRespuesta(e.getMessage()); } finally { try { sesion.close(); } catch (HibernateException hibernateException) { hibernateException.printStackTrace(); } } return tiposd; } /** * Mtodo que retorna el siguiente ID de la tabla Tipos Documentales * @return */ private int maxTiposDocuemntales() { int ret = -1; try { String validaConexion = initOperation(); if (!"Ok".equalsIgnoreCase(validaConexion)) { } else { Query query = sesion.createQuery("SELECT MAX(idTipoDocumental) FROM TiposDocumentalesEntity"); ret = (int) query.uniqueResult(); ret++; } } catch (Exception e) { ret = 1; } return ret; } /** * Mtodo para actualizar un Tipo Docuemtal * @param tipod * @return */ public TiposDocumentalesEntity actualizaTipoDocuemtal(TiposDocumentalesEntity tipod) { try { String validaConexion = initOperation(); if (!"Ok".equalsIgnoreCase(validaConexion)) { tipod.setNumeroRespuesta(3); tipod.setTrazaRespuesta("Error de Conexin " + validaConexion); } else { sesion.update(tipod); tx.commit(); tipod.setTrazaRespuesta("Actualizacin de Tipo Documental Exitosa"); tipod.setNumeroRespuesta(20); } } catch (Exception e) { e.printStackTrace(); tipod = new TiposDocumentalesEntity(); tipod.setNumeroRespuesta(0); tipod.setTrazaRespuesta(e.getMessage()); } finally { try { sesion.close(); } catch (HibernateException hibernateException) { hibernateException.printStackTrace(); } } return tipod; } /** * Mtodo que retorna la lista de tipos documentales disponibles * @return */ public ObjetoRetornaEntity listaTipoDcouemntal() { ObjetoRetornaEntity retorna = new ObjetoRetornaEntity(); try { String validaConexion = initOperation(); if (!"Ok".equalsIgnoreCase(validaConexion)) { retorna.setNumeroRespuesta(3); retorna.setTrazaRespuesta("Error de Conexin " + validaConexion); } else { Query query = sesion.createQuery("FROM TiposDocumentalesEntity p WHERE p.estadoTipoDocuemtal<>'E'"); retorna.setRetorna((ArrayList<Object>) query.list()); retorna.setTrazaRespuesta("Consulta tabla Tipos Documentales exitosa"); retorna.setNumeroRespuesta(21); } } catch (Exception e) { e.printStackTrace(); retorna = new ObjetoRetornaEntity(); retorna.setNumeroRespuesta(0); retorna.setTrazaRespuesta(e.getMessage()); } finally { try { sesion.close(); } catch (HibernateException hibernateException) { hibernateException.printStackTrace(); } } return retorna; } /** * Mtodo que trae un Pas por ID * @param idTiposDocumentales * @return */ public TiposDocumentalesEntity tipoDocumentalPorID(int idTiposDocumentales) { TiposDocumentalesEntity pais = new TiposDocumentalesEntity(); String validaConexion = initOperation(); try { if (!"Ok".equalsIgnoreCase(validaConexion)) { pais.setNumeroRespuesta(3); pais.setTrazaRespuesta("Error de Conexin: " + validaConexion); } else { Query query = sesion.createQuery("FROM TiposDocumentalesEntity p WHERE p.idTipoDocumental=:idS"); query.setParameter("idS", idTiposDocumentales); pais = (TiposDocumentalesEntity) query.uniqueResult(); pais.setTrazaRespuesta("Consulta de pais exitosa"); pais.setNumeroRespuesta(35); } } catch (Exception e) { e.printStackTrace(); pais = new TiposDocumentalesEntity(); pais.setNumeroRespuesta(0); pais.setTrazaRespuesta(e.getMessage()); } finally { try { sesion.close(); } catch (HibernateException hibernateException) { hibernateException.printStackTrace(); } } return pais; } }