Same, JDO, also started compatible JPA. At the field of ORM, it seems that JPA is a benevolent government, is the normative specification. At the support of major manufacturers, JPA use became widespread.
2 Spring
Spring + Hibernate often referred to as the Java Web application framework for the most popular combinations. JCP adopted in the Web Beans JSR, but wishing to JSF + EJB + JPA, from JBoss Seam (Spring except for) a number of components and EJB 3 (currently able to provide the basic function of interception and dependency injection framework for simplified Session Bean) a portfolio of standardized Web. Spring 2.0 now for the JPA to provide a complete EJB container contract, permit JPA in any environment can be managed in the Spring service layer to use (including the Spring all the AOP and DI enhanced). At the same time, about a combination of Web applications will be EJB, Spring + Hibernate, or Spring + JPA debate has been flooded in the ear.
At Spring 2.0.1 formally provide support JPA, which also contributed to the development of JPA, it is necessary to know the benefits of JPA is to be separated from container operations, become more concise.
3 OpenJPA
OpenJPA organizations are Apache open source project, it implements the JPA in the EJB 3.0 standard for developers to provide powerful, easy to use persistent data management framework. OpenJPA package of interactive and relational database operations, so that developers focus on business logic in the preparation. OpenJPA can be used as an independent framework for the role of persistence layer, you can easily with other Java EE application framework or standards in line with the EJB 3.0 container integration.
4 other <br /> including implementation currently supports the Toplink, Hibernate Entitymanager such. TopLink ago required fees, is now an open source. OpenJPA Although free of charge, but the functionality, performance, popularity, etc. more necessary efforts.
For EJB, the entity Bean has been the subject of criticism, because its too complicated and large. JPA emergence of the separation of a high degree of complexity. This allows EJB promotion has also become easier.
In short, JPA specification only of major concern are API's behavior, and achieve the completion of the majority by a wide variety of performance-related tuning. Nevertheless, all reliable implementation should have a data cache, as a selection. I hope the near future, JPA can become a true standard.
Summary
EJB 3.0 and JPA will no doubt Java EE 5 are the main selling point. In some areas, they have brought to the Java community a competitive advantage, and at other areas of Java and its competitors, regardless of par (because, it is undeniable that the present does not yet exist in some areas, standards-based approach).
Over the past few years, Spring Framework has been the EJB in the enterprise field of major competitors. EJB3.0 specification solves a lot of questions to promote the rise of Spring. With its emergence, EJB3.0 There is no doubt better than the Spring provides a developer experience - the most notable advantage is that it does not require configuration files.
JPA provides a standard OR mapping solution, the solution completely integrated into the EJB3. 0-compatible container. JPA predecessors will continue to develop steadily, but business applications will use the raw may be reduced. JPA implementation compatible with the entity manager seems most likely direction of development of such technologies.
Java EE specification of a larger series of questions has nothing to do with JPA. Java EE Series norms and questions related to Web integration between the EJB containers. Spring in this area still has a major competitive advantage. JBoss's Seam project try to use a custom method to resolve this problem. Caucho Resin Application Server attempts to expand the container at the border and supports the Web container to use @ EJB Notes. We hope that Java EE 5.1 will solve the problem of integration layer to provide us with a comprehensive and standards-dependent injection method.
In the near future, Sun may JPA as a separate JSR treatment may also be simultaneously JPA as part of Java SE. But these are not too important, it is important that we can now at the situation from the container, in Java SE applications of the JPA.
JPA has been as an object of enduring standards, not only can Java EE application server support, but also can be directly used in Java SE. Developers will no longer be required at the existing ORM framework of a variety of difficult to choose, according to Sun's anticipated that the existing framework ORM overhead halo will gradually dim, no longer has the attraction of the past.







