Content deleted Content added
Citation bot (talk | contribs) Altered isbn. Add: date, authors 1-1. Removed parameters. Some additions/deletions were parameter name changes. Upgrade ISBN10 to 13. | Use this bot. Report bugs. | Suggested by Dominic3203 | Category:Persistence frameworks | #UCB_Category 4/7 |
m v2.05b - Bot T20 CW#61 - Fix errors for CW project (Reference before punctuation) |
||
(9 intermediate revisions by 5 users not shown) | |||
Line 6:
| developer = [[Red Hat]]
| released = {{Start date and age|2001|05|23|df=yes}}
| latest release version =
| latest release date = {{Start date and age|
| latest preview version =
| latest preview date =
Line 14:
| platform = [[Java Virtual Machine]]
| genre = [[Object–relational mapping]]
| license = [[
| website = {{URL|https://hibernate.org/orm/}}
}}
'''Hibernate ORM''' (or simply '''Hibernate''') is an [[object–relational mapping]]{{sfn|Bauer|King|Gregory|2015}}{{rp|§1.2.2|p=12}} tool for the [[Java (programming language)|Java]] programming language. It provides a [[Software framework|framework]] for mapping an [[Object-oriented programming|object-oriented]] ___domain model to a [[relational database]]. Hibernate handles [[object–relational impedance mismatch]] problems by replacing direct, [[Persistence (computer science)|persistent]] database accesses with high-level object handling functions.<ref>{{Cite web|url=https://docs.jboss.org/hibernate/orm/7.0/introduction/html_single/Hibernate_Introduction.html|title=A Short Guide to Hibernate 7|website=docs.jboss.org}}</ref>
Hibernate is [[free software]] that is distributed under the [[Apache License]]. Versions prior to 7.0.0.Beta4 were distributed under the [[GNU Lesser General Public License]] 2.1.
Hibernate's primary feature is mapping from Java classes to [[Table (database)|database tables]], and mapping from Java data types to [[SQL]] data types. Hibernate also provides data query and retrieval facilities. It generates SQL calls and relieves the developer from the manual handling and object conversion of the result set.
==Standards==
Hibernate ORM is a certified compatible implementation of the industry-standard [[Jakarta Persistence]]<ref>{{Cite web|url=https://jakarta.ee/specifications/persistence/3.2/|title=Jakarta Persistence 3.2|website=jakarta.ee}}</ref> (formerly Java Persistence API) and Jakarta Data<ref>{{Cite web|url=https://jakarta.ee/specifications/data/1.0/|title=Jakarta Data 1.0|website=jakarta.ee}}</ref><ref>{{Cite web|url=https://docs.jboss.org/hibernate/orm/6.6/repositories/html_single/Hibernate_Data_Repositories.html|title= Introducing Hibernate Data Repositories |website=docs.jboss.org}}</ref> specifications.
==Mapping==
Line 40 ⟶ 44:
==Hibernate Query Language (HQL)==
Hibernate provides a [[SQL]] inspired language called Hibernate Query Language<ref>{{Cite web|url=https://docs.jboss.org/hibernate/orm/7.0/querylanguage/html_single/Hibernate_Query_Language.html|title=A Guide to Hibernate Query Language|website=docs.jboss.org}}</ref> (HQL) for writing SQL-like queries against Hibernate's data objects. ''Criteria Queries'' are provided as an [[Object-oriented programming|object-oriented]] alternative to HQL. Criteria Query is used to modify the objects and provide the restriction for the objects.{{sfn|Bauer|King|Gregory|2015}}{{rp|§=14.1.1|p=347–349}}
HQL (Hibernate Query Language) is the object-oriented version of SQL. It generates database independent queries so that there is no need to write database-specific queries. Without this capability, changing the database would require individual SQL queries to be changed as well, leading to maintenance issues.
Line 80 ⟶ 84:
In December 2018, Hibernate ORM 5.4.0 Final was released.<ref>{{Cite web|url=http://hibernate.org/orm/releases/|title=Releases - Hibernate ORM|website=hibernate.org}}</ref>
In March, 2022, Hibernate ORM 6.0.0 Final was released,<ref>{{Cite web|url=https://in.relation.to/2022/03/31/orm-60-final/|website=hibernate.org|title=Hibernate 6.0 Final|language=en}}</ref> a "major redesign [which] has touched almost every subsystem of Hibernate, including the APIs, mapping annotations, and the query language".<ref>{{Cite web|url=https://docs.jboss.org/hibernate/orm/6.6/introduction/html_single/Hibernate_Introduction.html#preface|title=An Introduction to Hibernate 6|website=docs.jboss.org}}</ref>
In October 2022, Hibernate ORM 6.1.4 Final was released.<ref>{{Cite web |last=Boriero |first=Andrea |title=Hibernate ORM 6.1.4.Final released |url=https://in.relation.to/2022/10/05/hibernate-orm-614-final/ |access-date=2022-10-11 |website=In Relation To |date=5 October 2022 |language=en}}</ref>
In May 2025, Hibernate ORM 7.0.0 Final was released,<ref>{{Cite web|url=https://in.relation.to/2025/05/20/hibernate-orm-seven/|title=Hibernate 7 (and Hibernate Validator 9)|website=In Relation To}}</ref> with support for Jakarta Persistence 3.2 and Jakarta Data 1.0.
==Application programming interface==
Line 269 ⟶ 277:
[[Category:Red Hat software]]
[[Category:Persistence frameworks]]
[[Category:Software using the
[[Category:Cross-platform free software]]
|