Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Teneo/Hibernate"
Line 9: | Line 9: | ||
Teneo offers full support for EMF XML Schema constructs, see the [[Teneo/Hibernate#XML_Schema_Support|Teneo XML Schema pages]] for more information. | Teneo offers full support for EMF XML Schema constructs, see the [[Teneo/Hibernate#XML_Schema_Support|Teneo XML Schema pages]] for more information. | ||
− | + | The EMF, Hibernate and Teneo versions are related as follows: | |
− | * '''1.0.4''': for Eclipse 3.4-3.3/EMF 2.4-2.3/hibernate 3.2/3.3.1 and jdk 1.5 | + | * Teneo '''1.0.4''': for Eclipse 3.4-3.3/EMF 2.4-2.3/hibernate 3.2/3.3.1 and jdk 1.5 |
− | * '''1.1.0''': | + | * Teneo '''1.1.0''': for Eclipse 3.5/EMF 2.5/hibernate 3.2/3.3.1 and jdk 1.5 |
− | * '''1.1.1/1.1.2''': Maintenance Builds for Eclipse 3.5/EMF 2.5/hibernate 3.3.2 and jdk 1.5 | + | * Teneo '''1.1.1/1.1.2''': Maintenance Builds for Eclipse 3.5/EMF 2.5/hibernate 3.3.2 and jdk 1.5 |
− | * '''1.2.0''': Stable Builds for Eclipse 3.6/EMF 2.6/hibernate 3.3.2 and jdk 1.5 | + | * Teneo '''1.2.0''': Stable Builds for Eclipse 3.6/EMF 2.6/hibernate 3.3.2 and jdk 1.5 |
Revision as of 16:27, 21 January 2010
NOTE: the documentation for Hibernate is currently (January 2010) being transferred from the current site to the Eclipse wiki. This means that the pages in the wiki can be incomplete until the transfer is complete. For the complete documentation visit the current site: here.
Contents
The EMF - Hibernate integration supports all EMF features and standard Hibernate features. EMF objects can be persisted in most major relational databases and retrieved using an EMF resource approach or HQL queries.
A distinctive feature of Teneo is that you can override/extend the Model-Relational mapping using JPA annotations in the model, see the JPA/EJB3 pages for more information.
Teneo offers full support for EMF XML Schema constructs, see the Teneo XML Schema pages for more information.
The EMF, Hibernate and Teneo versions are related as follows:
- Teneo 1.0.4: for Eclipse 3.4-3.3/EMF 2.4-2.3/hibernate 3.2/3.3.1 and jdk 1.5
- Teneo 1.1.0: for Eclipse 3.5/EMF 2.5/hibernate 3.2/3.3.1 and jdk 1.5
- Teneo 1.1.1/1.1.2: Maintenance Builds for Eclipse 3.5/EMF 2.5/hibernate 3.3.2 and jdk 1.5
- Teneo 1.2.0: Stable Builds for Eclipse 3.6/EMF 2.6/hibernate 3.3.2 and jdk 1.5
Note: the difference in hibernate versions between the 1.1.0 and 1.1.1 and higher builds. Hibernate introduced a binary incompatibility in version 3.3.2, forcing Teneo to adhere to this.
Overview, download & install and Quickstart
Tutorials
Configuration and Usage Details
- Configuration Options: Teneo has many (40+) configuration options controlling mapping and runtime behavior.
- Hibernate Session and Entitymanager Datastores: Teneo implements the runtime persistence functionality through a data store concept which takes care of initializing the runtime layers.
- Teneo extensions: the Teneo extensions mechanism allows you to override and replace core Teneo components.
- EMF Hibernate Integration Details: discusses several detailed aspects of the integration between Hibernate and EMF, for example: use of a package registry, classloading, escaping of table and column names, synthetic id and version, etc.
- Hibernate Resource: discusses the Teneo specific implementation of the EMF Resource concept.
Model Relational Mapping with EJB3/JPA Annotations
Teneo can map practically every ecore model to a relational store. The mapping logic can be controlled by optional in-model JPA annotations. The annotations are specified in the model (xsd or ecore) directly or set in a separate XML file:
- Supported annotations: gives a complete overview of the support for JPA annotations including Hibernate annotation extensions and convenience Teneo extensions.
- Annotations format: describes in detail how annotations can be specified in the model itself or in a separate XML file. By supporting an external XML it is possible to annotate existing ecore models, so without the need to change them.
- Annotation examples: provides downloadable examples and discusses some special cases.
- Association Mapping: describes in detail how associations can be mapped to a relational store, also outlining which annotations and configuration options can be used.
- Inheritance Mapping: discusses the inheritance mapping strategies supported by Teneo.
- Entity Attribute Value Mapping: the entity-attribute-value mapping strategy is a special mapping suitable for models which change at runtime.
XML Schema Support
Teneo supports practically all XML Schema constructs which are also supported by EMF. Teneo tries to generate a sensible, practical, readable and performant database schema for a XML Schema model. It is important that the domain model concepts are also reflected in the database schema itself.
For more details on the Teneo XML Schema support, visit the following pages:
- Supported XML Schema Constructs: gives a detailed listing of the XML Schema which are supported by Teneo.
- Feature Map and Mixed Content: discusses how Teneo supports mixed content and feature maps.
CVS, Support and FAQ
The Teneo source code can be found here (CVS):
- dev.eclipse.org
- /cvsroot/modeling
- org.eclipse.emf/org.eclipse.emf.teneo
If you encounter issues, check the FAQ page.
Support for Teneo is given on the EMF newsgroup. For accessing the news group through a browser visit this page.