CSE446 S OFTWARE Q UALITY M ANAGEMENT Spring 2014 Yazılım ve Uyguluma Geliştirme Yöneticisi Orhan Başar Evren.

Slides:



Advertisements
Similar presentations
Persistence Jim Briggs 1. 2 Database connectivity: JDBC Java Database Connectivity An API for connecting Java programs (applications, applets and servlets)
Advertisements

Spring, Hibernate and Web Services 13 th September 2014.
Object Relational Mapping Overview Presented By: Denard Springle Northern Virginia ColdFusion Users Group.
JBoss Seam: Contextual Components Jason Bechtel
Session-02.
An Introduction to Hibernate Matt Secoske
Data Persistence and Object-Relational Mapping Slides by James Brucker, used with his permission 1.
Object Persistence and Object-Relational Mapping James Brucker.
Introduction to JPA Java Persistence API Introduction to JPA.
Hibernatification! Roadmap for Migrating from Plain Old SQL on JDBC to JPA on Hibernate Duke Banerjee Senior Developer, DrillingInfo.com.
Java Persistence API Maciej Adamiak. Agenda -Entity, -Entity Operations, -Query Language.
Rice KRAD Data Layer JPA Design Eric Westfall July 2013.
Towards Bboogle 3.0.0: a Technical Walkthrough Patricia Goldweic Sr. Software Engineer AR&T, Northwestern University Brian Nielsen Manager, Faculty Support.
2007 JavaOne SM Conference | Session BOF-4181 | BOF-4181 Migrating a Spring/Hibernate Application to Java Platform, Enterprise Edition (Java EE) 5 Adrian.
Agenda What is Hibernate Spring Integration Questions Overview
Maven for building Java applications By Nalin De Zoysa
1 Lecture 17 George Koutsogiannakis/SUMMER 2011 CS441 CURRENT TOPICS IN PROGRAMMING LANGUAGES.
JPA Java Persistence API. Introduction The Java Persistence API provides an object/relational mapping facility for managing relational data in Java applications.
IS-907 Java EE JPA: Simple Object-Relational Mapping.
CSE446 S OFTWARE Q UALITY M ANAGEMENT Spring 2014 Yazılım ve Uyguluma Geliştirme Yöneticisi Orhan Başar Evren.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
JBoss Seam Presented by Andy Nguyen Truc Pham. What is JBoss Seam? Created by Gavin King Created by Gavin King A lightweight framework for Java EE 5.0.
Introduction to Entities
Object Oriented Analysis and Design 1 Chapter 7 Database Design  UML Specification for Data Modeling  The Relational Data Model and Object Model  Persistence.
Hitachi Consulting IOUG Collaborate ‘08 EJB 3.0 Java Persistence API (JPA) with Oracle TopLink Bill Lyons Systems Architect Hitachi Consulting
Topic : JPA Kaster Nurmukan. Overview of JPA EntityManager.
EJB 3.0 Persistence Based on: Patel, Brose, Silverman, Mastering Enterprise JavaBeans 3.0.
Hibernate Persistence. What is Persistence Persist data to database or other storage.  In OO world, persistence means persist object to external storage.
Topic : Hibernate 2: Object Persistence and ORM Kaster Nurmukan.
(1) Introduction to Models using the Play Framework Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University.
1 Persistence in Java Enterprise Container Managed Persistence Application Managed Persistence Michael Brockway Sajjad Shami CG0165: Advanced Applications.
Java Data Persistence Using Hibernate Jack Gardner October 2004.
An Introduction to Object/Relational Persistence and Hibernate Yi Li
MCS 270 Spring 2014 Object-Oriented Software Development.
Middleware Technology (J2EE/EJB) Entity Bean (JBoss EJB 3.0 tutorial)
Java Persistence API v1.0 a standard for ORM frameworks and POJO based Persistence Magnus Larsson
Topic : Hibernate 3:Advanced ORM Kaster Nurmukan.
Topic : Hibernate 1 Kaster Nurmukan. An ORM tool The problem fixed by ORM Advantage Hibernate Hibernate Basic –Hibernate sessionFactory –Hibernate Session.
The Java Persistence API ©SoftMoore ConsultingSlide 1.
Java Persistence API part 1 INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA Eriq Muhammad Adams J
v110912Java Persistence: EntityManager2 Overview Earlier versions of EJB Specification defined the persistence layer –javax.ejb.EntityBean Java EE 5 moved.
Java Persistence API (JPA) Relationships. Kinds of relationships UML associations and aggregations (ER non- identifying relationships, shared semantics)
Programmation des Applications Internet Internet Application Programming © - Last update: Friday, 05 February
JPA The New Enterprise Persistence Standard Mike Keith
Topic : Hibernate 1 Kaster Nurmukan. An ORM tool Used in data layer of applications Implements JPA.
IS-907 Java EE Introduction to JPA. Java Persistence API A framework for using relational databases in Java programs mapping between tables and classes,
JPA in Vaadin CSCI 3130 Winter What is JPA?  Java Persistence API  Allows for “easy” storage of Java Objects  Is a type of Object Relational.
Hibernate Thuy, Le Huu. Pentalog VN. Agenda Hibernate Annotations Improving performance – Lazy loading – Fetching Strategies – Dynamic insert, dynamic.
1 Entity Callbacks and Listeners When you execute EntityManager methods like persist( ), merge( ), remove( ), and find( ), or when you execute EJB QL queries,
CS520 Web Programming Object-Relational Mapping with Hibernate and JPA Chengyu Sun California State University, Los Angeles.
CS520 Web Programming Object-Relational Mapping with Hibernate and JPA (I) Chengyu Sun California State University, Los Angeles.
Hibernate Java Persistence API. What is Persistence Persistence: The continued or prolonged existence of something. Most Applications Achieve Persistence.
Hibernate Annotation 李日貴 (jini) jakarta99 AT gmail.com SoftLeader Tech. Corp. Taiwan Java Annotation Lesson 1.
CS520 Web Programming Spring – Inversion of Control Chengyu Sun California State University, Los Angeles.
CS520 Web Programming Object-Relational Mapping with Hibernate and JPA Chengyu Sun California State University, Los Angeles.
Introduction to Entity framework
Don't Know Jack About Object-Relational Mapping?
CS6320 – Java Persistence API
Chengyu Sun California State University, Los Angeles
Java Persistence Architecture (JPA)
CS520 Web Programming Spring – Inversion of Control
Advanced Java Programming
Database Applications (15-415) ORM - Part I Lecture 11, February 11, 2018 Mohammad Hammoud.
JPA: Mapping to an existing database
Developing and testing enterprise Java applications
CS4961 Software Design Laboratory Understand Aquila Backend
Topics Persistence API for JAVA EE5 Java Transaction API Entity class.
Chengyu Sun California State University, Los Angeles
Presentation transcript:

CSE446 S OFTWARE Q UALITY M ANAGEMENT Spring 2014 Yazılım ve Uyguluma Geliştirme Yöneticisi Orhan Başar Evren

Today’s Overview – JPA : Java Persistence API What is JPA ? Benefits of JPA ? Entities and metadata JPA Annotations Entity Relationships Entity Manager JPA Life Cycle CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Java Persistence API The Java Persistence API (JPA) is an object- relational mapping (ORM) technology. JPA is used for automatically storing data contained in Java objects into a relational database. JPA is a specification. Followings are common JPA implementations from different vendors – EclipseLink (oracle TopLink) – Hibernate – OpenJPA CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Benefits POJO (Plain Old Java Object) Persistence Metadata-driven ORM No low-level JDBC/SQL Code No complex DAO (Data access objects) Managed transactions No vendor-specific code: any relational DB Data caching and performance optimization Available for Java SE, not just for EE JPQL : Java Persistence Query Language CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entities and Metadata JPA maps java objects to a database using metadata JPA managed java objects are called as Entities, marked annotation. Metadata can also be defined in a XML file. CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entities and Metadata JPA maps java objects to a database using metadata JPA managed java objects are called as Entities, marked annotation. Metadata can also be defined in a XML file. Entity manager is used to perform CRUD operations on an entity CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entity Class Entity classes are the model in MVC pattern. Class fields should be private and they should be accessed through getter and setter methods. Entity class should have no-argument constructor. Class fields can be primitive types, serializable class types or a collection. CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – : Define classes that will map to : Each entity should have to define the primary key in the Optional annotation is used to define the name of the column name and other properties of the column on To declare a field to not persist CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entity public class User private int private String private String ; … // getters and setters } CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entity Relationships Unidirectional CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Relationships Attributes cascade: specifies which operations to be propagated to the target relationship. (MERGE, PERSIST, REFRESH, REMOVE, ALL) fetch: specifies whether the target relation object will be fetched automatically or not (LAZY, fetch=FetchType.EAGER) List users; CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entitiy Manager PersistenceContext is the collection of managed entities EntitiyManager is the interface to access persistence context Entity beans are not managed by Enterprise container like JSF Managed Beans. They are managed by the Persistence Context Transaction is needed to modify data. (insert, update, delete) Transaction is not needed to retrieve data. (select) CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entitiy private EntityManager private UserTransaction utx; User user = new User(); List users; public void save() { utx.begin(); em.persist(user); utx.commit(); } public List findAll() { users = em.createQuery("SELECT u FROM User u").getResultList(); } CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş

JPA – Entity Life Cycle CSE446 Software Quality Management Spring 2014 – Orhan Başar Evren - Netaş When instance of an entity class created it is in the new state. Entity becomes managed when it is persisted with EntityManager. On transaction commit, EntityManager stores the entity on database.