The recently-released EJB 3.0 specification has perhaps been one of the most talked-about technologies that has emerged from JCP for some time. At the center of attention is the Java Persistence API, a lightweight persistence model that acts as a point of convergence for the dominant persistence products currently on the market.
Standardization of persistence inside of the Java EE platform, as well as in the SE environment, will finally provide enterprise applications with the ability to write to one API and be able to run on the vendor of their choice.
This talk covers the core concepts of the API and describe how it can be used in applications. Some of the things that will be discussed will include:
Persistent identity
EntityManagers and persistence contexts
Object-relational mapping using annotations and XML
Dynamic and static queries
Using the API outside a container
Packaging and deploying
Mike Keith is the co-specification lead of EJB 3.0 (JSR 220) and a member of the Java EE 5 expert group (JSR 244). He has 15 years of teaching, research and practical experience in object-oriented and distributed systems, specializing in object persistence. His expertise has stemmed from designing and implementing numerous persistent object systems for Fortune 100 corporations. He has been involved in EJB since its initial release and other forms of persistence since long before EJB. He is an architect for Oracle TopLink and the Oracle OC4J Java EE Container and is a popular speaker at numerous conferences and events. Mike co-authored the book "Pro EJB 3: Java Persistence API".
Patrick Linskey has been working with O/R mapping for over six years. He is an active member of both the JDO 2.0 and EJB 3.0 expert groups, and is on the JAOO Conference Program Committee.
As the founder and CTO of SolarMetric, Patrick drove the technical direction of the company. Now at BEA, he leads the EJB team in designing and implementation of the WebLogic Server EJB solution.
He has been the face of standards-based persistence, having evangelized JDO and EJB Persistence in hundreds of talks throughout the world. Under Patrick's leadership, Kodo has become the market leading JDO implementation with over 350 customers throughout the world spanning all industries, and is now the basis for the WebLogic Server EJB persistence provider.
Java Persistence 2.0— One of the key outcomes of Java EE 5 / EJB 3.0 was the introduction of the Java Persistence API. JPA is a new standard API for Java persistence and object/relational mapping that supports use in both Java EE and Java SE environments.
JSR 318 - Enterprise JavaBeans 3.1— Enterprise JavaBeans is an architecture for the development and deployment of component-based business applications. Applications written using the Enterprise JavaBeans architecture are scalable, transactional, and multi-user secure.
Advanced Topics in JPA— In this talk we will introduce a few of the common features and use them as a platform on which we can discuss some of the higher order JPA topics. As part of this discussion we will show how to use multiple persistence units, define and tune identifier generators, create and invoke native queries, and use XML mapping files for overriding annotation metadata. We will also show how JPA can be used in Java SE and Spring environments.
Writing JPA applications— In this session Patrick explores the new Java Persistence API, and examine some common practices for how to write Spring applications that use JPA. Patrick will focus more on API usage than on mapping configuration, and will look at the bootstrapping and runtime behavior of JPA applications. You will learn about JPA's optimistic locking semantics, including the benefits of optimistic read locks. Patrick looks at when it's appropriate to use the different facilities of the Java Persistence Query Language (JPQL), and also discusses common extensions to the spec, including performance caching, pessimistic locking, and fetch strategies.
Java EE 5 Blueprints (JPA)— The Java BluePrints projects presents the programming model, guidelines and examples for designing enterprise quality applications and web services using Java technologies. Some of the areas covered are Ajax-enabled Web 2.0 applications, Persistence, JavaServer Faces, SOA with BPEL, and WS-Security. This talk will focus on the Java Persistence API.