• JavaEE: Persistencia

    1. Introducción

      1. ORM estandarizado

      2. Se integra con conceptos de frameworks de persistencia

      3. No requiere de un contenedor JavaEE

      4. Puede ser testeado en un ambiente JavaSE

      5. Define una interface para los proveedores

    2. Entity

      1. Diferencia con Session Beans

        1. Tienen identidad (Primary Key)

        2. Son persistentes, tienen estado

        3. No son remótamente accesibles

        4. Su ciclo de vida es independiente

      2. Entity Classes

        1. @Entity

        2. Es un POJO

          1. No extiende de ninguna clase o interface

          2. No requiere implementar Serializable

        3. Mapea a una tabla de base de datos

        4. Debe tener un Primary Key

        5. Acceso por getters y setters

        6. Puede tener métodos con lógica de negocio

        7. Características adicionales

          1. The class must have a public or protected, no-argument constructor. The class may have other constructors.

          2. The class must not be declared final. No methods or persistent instance variables must be declared final.

          3. If an entity instance be passed by value as a detached object, such as through a session bean's remote business interface, the class must implement the Serializable interface.

          4. Entities may extend both entity and non-entity classes, and non-entity classes may extend entity classes.

          5. Clients must access the entity's state through accessor or business methods.

      3. Persistent Fields and Properties

        1. Java primitive types

        2. java.lang.String

        3. Other serializable types including:

          1. Wrappers of Java primitive types

          2. java.math.BigInteger

          3. java.math.BigDecimal

          4. java.util.Date

          5. java.util.Calendar

          6. java.sql.Date

          7. java.sql.Time

          8. java.sql.TimeStamp

          9. User-defined serializable types

          10. byte[]

          11. Byte[]

          12. char[]

          13. Character[]

        4. Enumerated types

        5. Other entities and/or collections of entities

        6. Embeddable classes

      4. Primary Key

        1. Simple

          1. @Id

        2. Compuesto

          1. @EmbeddedId

          2. @IdClass

        3. Tipos

          1. Java primitive types

          2. Java primitive wrapper types

          3. java.lang.String

          4. java.util.Date (the temporal type should be DATE)

          5. java.sql.Date

          6. No usar tipos de punto flotante

      5. Multiplicidad

        1. @OneToOne

        2. @OneToMany

        3. @ManyToOne

        4. @ManyToMany

      6. Lifecycle

        1. @PrePersist

        2. @PostPersist

        3. @PreRemove

        4. @PostRemove

        5. @PreUpdate

        6. @PostUpdate

        7. @PostLoad

        8. Puede ser declarado en una clase Listener

          1. @EntityListeners

    3. EntityManager

      1. Asociado a un Persistence Context

      2. Tipos

        1. Container-Managed Entity Managers

          1. El Persistence Context se propaga automáticamente

          2. @PersistenceContext EntityManager em;

        2. Application-Managed Entity Managers

          1. El Persistence Context no se propaga

          2. El ciclo de vida del EntityManager es manejado por la app

          3. @PersistenceUnit EntityManagerFactory emf;

      3. Estados de Entity

        1. New

        2. Managed

        3. Detached

        4. Removed

    4. Despliegue

      1. Persistence units

        1. Agrupa

          1. Entity classes

          2. Mapping metadata

          3. Configuración de base de datos

        2. persistence.xml

          1. persistence

            1. persistence-unit

            2. description

            3. provider

            4. transaction-type

              1. JTA

              2. RESOURCE_LOCAL

            5. jta-data-source

            6. non-jta-datasource

            7. mapping-file

            8. jar-file

            9. excluded-unlisted-classes

            10. properties

    5. Acerca de

      1. Topic

      2. Topic

  • All Comments ( 0 )

    JavaEE: Persistencia

    Added: 2010-06-17 19:58:53

    From: lshimokawa (Joined 2009-12-01 22:08:05)

    30 views |0 downloads

    JavaEE: Persistencia

    More From: lshimokawa

    Kanban
    Kanban
    2011-11-12 16:31:26|522 views
    Lean Software Development
    Lean Software Development
    2011-11-09 01:27:21|903 views
    Agile Retrospectives
    Agile Retrospectives
    2011-10-29 01:34:44|27 views
    Scrum
    Scrum
    2011-10-19 20:29:40|550 views
    Agile Estimating and Planning
    Agile Estimating and Planning
    2011-10-18 23:12:09|433 views
    Agile Manifesto
    Agile Manifesto
    2011-10-18 01:08:23|63 views
    SOA Governance
    SOA Governance
    2011-10-06 21:11:38|6 views
    Messaging
    Messaging
    2011-10-04 20:49:55|78 views
    ESB
    ESB
    2011-06-10 00:58:10|84 views
    BPEL
    BPEL
    2011-06-09 20:43:51|71 views
    Design Patterns
    Design Patterns
    2011-06-09 00:30:13|12 views
    REST
    REST
    2011-05-31 05:17:28|63 views
    Web Services
    Web Services
    2011-05-09 22:17:13|111 views
    Service Oriented Architecture
    Service Oriented Architecture
    2011-05-05 23:16:09|571 views
    Sistemas Distribuidos
    Sistemas Distribuidos
    2011-05-05 00:17:34|193 views
    XP: String Calculator Kata
    XP: String Calculator Kata
    2011-04-29 23:42:24|90 views
    Agile Testing
    Agile Testing
    2011-04-29 23:34:44|51 views
    Calidad de Software
    Calidad de Software
    2011-04-29 23:34:12|429 views
    XP: Test Driven Development
    XP: Test Driven Development
    2011-04-29 22:17:41|24 views
    XP: Continuous Integration
    XP: Continuous Integration
    2011-04-29 22:16:59|12 views
    Enseñando ágilmente
    Enseñando ágilmente
    2010-10-05 16:49:57|571 views
    Spring Core
    Spring Core
    2010-09-23 16:11:48|27 views
    Arquitectura Web
    Arquitectura Web
    2010-09-10 21:22:01|180 views
    Struts 2
    Struts 2
    2010-08-18 23:50:33|63 views
    Spring JDBC
    Spring JDBC
    2010-08-11 01:52:17|33 views
    JavaSE: Exception
    JavaSE: Exception
    2010-08-11 01:35:49|24 views
    MVC
    MVC
    2010-08-11 00:39:04|48 views
    Logging
    Logging
    2010-08-05 02:37:21|6 views
    Design Principles
    Design Principles
    2010-07-30 23:36:59|9 views
    Acceptance Test Driven Development
    Acceptance Test Driven Development
    2010-07-30 23:35:04|54 views
    Agile: User Stories
    Agile: User Stories
    2010-07-30 23:33:09|139 views
    Apache Maven
    Apache Maven
    2010-07-30 23:31:47|145 views
    iBatis
    iBatis
    2010-07-30 23:00:20|9 views
    Object Relational Mapping
    Object Relational Mapping
    2010-07-28 00:27:19|30 views
    Aspect Oriented Programming
    Aspect Oriented Programming
    2010-07-09 21:30:41|903 views
    JavaEE: EJB
    JavaEE: EJB
    2010-06-28 14:10:51|36 views
    Extreme Programming
    Extreme Programming
    2010-06-17 20:19:25|2237 views
    Desarrollo para Entorno Web
    Desarrollo para Entorno Web
    2010-06-17 20:19:09|208 views
    JavaSE: JDBC
    JavaSE: JDBC
    2010-06-17 20:00:41|36 views
    JavaEE: Persistencia
    JavaEE: Persistencia
    2010-06-17 19:58:53|30 views
    JavaEE: Session Beans
    JavaEE: Session Beans
    2010-06-17 19:58:37|21 views
    AJAX
    AJAX
    2010-06-17 19:42:19|51 views
    JavaEE: JSP
    JavaEE: JSP
    2010-06-17 19:40:38|36 views
    JavaEE: Servlets
    JavaEE: Servlets
    2010-06-17 19:39:45|49 views
    JavaEE: Arquitectura
    JavaEE: Arquitectura
    2010-06-17 19:37:13|252 views
    JavaEE: Web
    JavaEE: Web
    2010-06-17 19:37:04|9 views
    XP: Simple Design
    XP: Simple Design
    2010-06-12 07:03:51|0 views
    XP: Refactoring
    XP: Refactoring
    2010-06-12 07:03:16|3 views
    XP: Pair Programming
    XP: Pair Programming
    2010-06-12 07:02:57|27 views
    XP: Collective Code Ownership
    XP: Collective Code Ownership
    2010-06-12 07:00:16|727 views
    Spring Core Kata
    Spring Core Kata
    2010-06-10 18:11:55|2518 views
    Domain Driven Design
    Domain Driven Design
    2010-05-19 22:29:33|1623 views