OpenJPA is an
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
implementation of the
Java Persistence API
Jakarta Persistence, also known as JPA (abbreviated from the former name Java Persistence API) is a Jakarta EE application programming interface specification that describes the management of relational data in enterprise Java applications.
Per ...
specification. It is an
object-relational mapping (ORM) solution for the
Java
Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
language, which simplifies storing objects in databases. It is
open-source software
Open-source software (OSS) is Software, computer software that is released under a Open-source license, license in which the copyright holder grants users the rights to use, study, change, and Software distribution, distribute the software an ...
distributed under the
Apache License 2.0
The Apache License is a permissive free software license written by the Apache Software Foundation (ASF). It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software u ...
.
History
Kodo, a
Java Data Objects
Java Data Objects (JDO) is a specification of Java object persistence. One of its features is a transparency of the persistence services to the domain model. JDO persistent objects are ordinary Java programming language classes ( POJOs); there i ...
implementation, was originally developed by SolarMetric, Inc in 2001.
BEA Systems
BEA Systems, Inc. was a company that specialized in enterprise infrastructure software products, which was wholly acquired by Oracle Corporation on April 29, 2008.
History
BEA began as a software company, founded in 1995 and headquartered in ...
acquired SolarMetric in 2005, where Kodo was expanded to be an implementation of both the
JDO (JSR 12) and
JPA (JSR 220) specifications. In 2006, BEA donated a large part of the Kodo source code to the
Apache Software Foundation
The Apache Software Foundation ( ; ASF) is an American nonprofit corporation (classified as a 501(c)(3) organization in the United States) to support a number of open-source software projects. The ASF was formed from a group of developers of the ...
under the name OpenJPA. The donated source code will be the core persistence engine of
BEA Weblogic Server,
IBM WebSphere
IBM WebSphere refers to a brand of proprietary computer software products in the genre of enterprise software known as "application and integration middleware". These software products are used by end-users to create and integrate applications ...
, and the
Geronimo
Gerónimo (, ; June 16, 1829 – February 17, 1909) was a military leader and medicine man from the Bedonkohe band of the Ndendahe Apache people. From 1850 to 1886, Geronimo joined with members of three other Central Apache bands the Tchihen ...
Application Server. In May 2007, OpenJPA graduated from the incubator to a top-level project and also passed Sun's
Technology Compatibility Kit A Technology Compatibility Kit (TCK) is a suite of tests that at least nominally checks a particular alleged implementation of a Java Specification Request (JSR) for compliance. It is one of the three required pieces for a ratified JSR in the Java C ...
compliant with the Java Persistence API.
OpenJPA Project Incubation Status
/ref>
See also
* Persistence
Persistence or Persist may refer to:
Math and computers
* Image persistence, in LCD monitors
* Persistence (computer science), the characteristic of data that outlives the execution of the program that created it
* Persistence of a number, a ma ...
* EclipseLink
EclipseLink is the open source Eclipse Persistence Services Project from the Eclipse Foundation. The software provides an extensible framework that allows Java developers to interact with various data services, including databases, web services, ...
* Hibernate
Hibernation is a state of minimal activity and metabolic reduction entered by some animal species. Hibernation is a seasonal heterothermy characterized by low body-temperature, slow breathing and heart-rate, and low metabolic rate. It is most ...
* ActiveJPA
* NoSQL
NoSQL (originally meaning "Not only SQL" or "non-relational") refers to a type of database design that stores and retrieves data differently from the traditional table-based structure of relational databases. Unlike relational databases, which ...
datastores like Infinispan
References
External links
*
Kodo Towards an Open Source EJB 3.0 Persistence Engine by Jon Mountjoy
by Kevin Sutter
Interview with Patrick Linskey
discusses OpenJPA and the JPA specification on August 23, 2007
{{DEFAULTSORT:Apache Openjpa
OpenJPA
OpenJPA is an open source implementation of the Java Persistence API specification. It is an object-relational mapping (ORM) solution for the Java language, which simplifies storing objects in databases. It is open-source software distributed un ...
Object–relational mapping
Java enterprise platform