官术网_书友最值得收藏!

Introduction

Entities are classes that need to be persisted; their state is stored outside the application, typically in a relational database. Unlike session beans, entities do not have business logic other than validation. As well as storing such entities, we want to query, update, and delete them.

The EJB 3 specification recognizes that many applications have the above persistence needs without requiring the services (security, transactions) of an application server EJB container. Consequently the persistence aspects of EJB 3 have been packaged as a separate specification—the Java Persistence API (JPA). JPA does not assume we have a container and can even be used in a Java SE (Standard Edition) application. As well as persistence, JPA deals with Object/Relational Mapping and Queries, these are covered in Chapters 4 and 5 respectively. Most of our examples assume that the persistence engine exists within an EJB 3 container such as GlassFish or JBoss. In Chapter 6 we shall show examples of persistence outside a container.

Successful standalone object-relational mapping products such as open source Hibernate and proprietary Oracle Toplink have implemented these persistence technologies for a number of years. Creators of Oracle Toplink and Hibernate have been influential in the development of the JPA specification. So, readers who are familiar with either Hibernate or Toplink will recognize similarities between the JPA and those products. Furthermore, under the covers, the GlassFish application server implements the JPA using Toplink and the JBoss application server uses Hibernate. These are pluggable defaults however, so it is possible to implement the JPA in GlassFish using Hibernate for example.

The JPA can be regarded as a higher level of abstraction sitting on top of JDBC. Under the covers the persistence engine converts JPA statements into lower level JDBC statements.

主站蜘蛛池模板: 阳高县| 泽普县| 阳信县| 黄冈市| 南雄市| 黄山市| 冕宁县| 酉阳| 磐石市| 邹城市| 仲巴县| 滨海县| 宿迁市| 安多县| 宣恩县| 太康县| 海盐县| 锡林浩特市| 运城市| 安国市| 绥芬河市| 平泉县| 双流县| 南皮县| 四川省| 福安市| 磐石市| 阳信县| 高邮市| 涟水县| 青川县| 金沙县| 和田市| 甘孜| 聂拉木县| 南京市| 秀山| 威远县| 林州市| 铜梁县| 郑州市|