Hibernate (7,8)

Description

mapa metal del tema 7 y 8 del curso de hibernate
Maria Orca
Mind Map by Maria Orca, updated more than 1 year ago
Maria Orca
Created by Maria Orca over 6 years ago
53
0

Resource summary

Hibernate (7,8)
  1. SPRING
    1. Spring
      1. Es uno de los frameworks más usados en Java
        1. Capacidad de realizar Inyección de Dependencias y tiene un framework para desarrollo Web (Spring MVC)
          1. Para trabajar con el contenedor de Inyección de Dependencias
            1. 1.- Preparando Spring: Cómo inicializar Spring para que pueda funcionar.
              1. Spring necesita dos pasos para poder ser usado:
                1. 1.- Crear un fichero de configuración
                  1. 2.- Crear un objeto con el contexto de Spring desde Java
                2. 2.- Asignado Beans: Cómo indicarle a Spring que queremos que inyecte otro objeto en alguna propiedad de nuestro objeto.
                  1. Hay tres formas de asignar un Bean a una propiedad/variable/método en Spring:
                    1. 1.- Mediante el fichero de configuración applicationContext.xml
                      1. 2.- Mediante las anotaciones
                        1. 3.- Mediante código
                      2. Definiendo Beans: Cómo decirle a Spring los objetos que pueden ser inyectados.
                        1. Spring permite dos formas de definir los beans
                          1. En el fichero applicationContext.xml
                            1. Mediante anotaciones
                      3. Spring MVC
                        1. Mejora el uso del API de Servlets pero sin estar muy alejados de ellos. En Spring en vez de usar Servlets usaremos clases Java llamadas controladores.
                          1. Se integra perfectamente con la parte de Inyección de Dependencias de Spring.
                            1. Ficheros de configuración
                              1. web.xml: se añade código al fichero web.xml.
                                1. Se deberá crear el fichero dispatcher-servlet.xml en la carpeta /WEB-INF.
                                  1. context.xml se utiliza para configurar el javax.sql.DataSource que usará el pool de conexiones.
                                    1. hibernate.cfg.xml es necesario modificarlo para indicarle a Hibernate que obtenga la conexiones a través del DataSource
                                      1. applicationContext.xml
                                      2. Manejo de peticiones
                                        1. realiza a través de los métodos del controlador
                                          1. Cada método gestionará las peticiones de una o más URLs y puede haber tantos métodos como se desee.
                                            1. Cada método que controla peticiones Web tendrá la anotación @RequestMapping
                                        2. ARQUITECTURA
                                          1. Excepciones
                                            1. En una operación con Hibernate se pueden lanzar 4 excepciones.
                                              1. 1.- javax.validation.ConstraintViolationException
                                                1. Se reconvierte en una BussinessException. Mediante: BussinessException. throw new BussinessException(cve);
                                                2. 2.- org.hibernate.exception.ConstraintViolationException
                                                  1. 3.- RuntimeException
                                                    1. Relanza la misma excepción mediante: throw ex;
                                                    2. 4.-Exception
                                                      1. Relanza la excepción envuelta en una RuntimeException mediante: throw new RuntimeException(ex);
                                                    3. BussinessException
                                                      1. Se relanza sin ser modificada, mediante:. throw ex;
                                                        1. Avisa que los datos de las entidades contienen algún tipo de error que debe ser modificado.
                                                          1. Ventajas
                                                            1. Unificar el tratamiento de las excepciones
                                                              1. Simplificar el uso de javax.validation.ConstraintViolationException
                                                                1. Mejorar los mensajes de error
                                                                2. El código de BussinessException
                                                              2. DAO
                                                                1. Problema del patrón DAO es la repetición de código para cada una de las entidades.
                                                                  1. Los interfaces
                                                                    1. Los objetos DAO son interfaces asi se pueden tener varias implementaciones para cada interfaz
                                                                      1. Para evitar definir los mismos métodos en cada interfaz DAO se ha creado un interfaz padre
                                                                      2. Creando un nuevo objeto DAO
                                                                        1. Crear un nuevo interfaz que herede de una interfaz padre. El ejemplo es el siguiente: public interface MunicipioDAO extends GenericDAO<Municipio,Integer> { }
                                                                          1. Crear una nueva implementación para Hibernate que herede e implemente la interfaz. El ejemplo es el siguiente: public class MunicipioDAOImplHibernate extends GenericDAOImplHibernate<Municipio,Integer> implements MunicipioDAO { }
                                                                            1. Crear objetos DAO desde la aplicación, codigo de ejemplo: UsuarioDAO usuarioDAO = new UsuarioDAOImplHibernate(); ProfesorDAO profesorDAO = new ProfesorDAOImplHibernate();
                                                                      3. Paquetes
                                                                        1. Clases de un proyecto organizadas en paquetes
                                                                          1. Hay dos paquetes pricnipales
                                                                            1. com.fpmislata.persistencia
                                                                              1. Van las clases relacionadas con la persistencia pero que se reutilizan en los diversos proyectos.
                                                                                1. Dentro de el hay 3 paquetes
                                                                                  1. com.fpmislata.persistencia.dao: Tiene todo los relacionado con el interfaz DAO.
                                                                                    1. com.fpmislata.persistencia.dao.impl: Contiene la implementación genérica del interfaz DAO.
                                                                                      1. com.fpmislata.persistencia.hibernate: Contiene la clase de utilidad de Hibernate .
                                                                              2. ejemplo04
                                                                                1. Aquí ponemos las clases que son específicas de nuestro proyecto.
                                                                                  1. Dentro hay 4 paquetes
                                                                                    1. ejemplo04.dominio
                                                                                      1. ejemplo04.persistencia.dao
                                                                                        1. ejemplo04.persistencia.dao.impl
                                                                                          1. ejemplo04.presentacion
                                                                            2. HibernateUtil
                                                                              1. SessionFactory
                                                                                1. 3 formas de acceder al objeto SessionFactory
                                                                                  1. Inyección de Dependencias.
                                                                                    1. A cualquier objeto se le asigna una referencia a SessionFactory mediante el uso de un framework de Inyección de Dependencias.
                                                                                    2. Objeto global.
                                                                                      1. Tener a SessionFactory como una variable global así cualquier objeto puede acceder a él .
                                                                                      2. Paso del objeto entre clases.
                                                                                        1. Pasar el objeto SessionFactory por todos los objetos hasta llegar al que lo necesita.
                                                                                      3. Debe ser creada ya que no está incluida en Hibernate
                                                                                        1. Contiene código (método) estático
                                                                                          1. Inicializa Hibernate, crea y da acceso al objeto SessionFactory
                                                                                          2. El código que genera NetBeans para la clase HibernateUtil
                                                                                        Show full summary Hide full summary

                                                                                        Similar

                                                                                        Germany 1918-45
                                                                                        paul giannini
                                                                                        Exam 70-410: Installing and Configuring Windows Server 2012 R2
                                                                                        Mike M
                                                                                        AS Psychology Unit 1 & 2 (Edexcel)
                                                                                        AnthonyElikwu
                                                                                        Macromolecules
                                                                                        sealescience
                                                                                        Biological Definitions
                                                                                        Yamminnnn
                                                                                        Veterinary Nursing Instruments
                                                                                        rowan.bray
                                                                                        The Tempest
                                                                                        Dirk Weibye
                                                                                        Computer science quiz
                                                                                        Ryan Barton
                                                                                        TItrations (how to do the experiment) (concentrations)
                                                                                        janey.efen
                                                                                        Aplicaciones TIC
                                                                                        Klaudyna Filipkowska
                                                                                        Histologie
                                                                                        Moloșnicov Tanciu