最现代的应用程序使用关系型数据库来存储数据。最近,许多厂商改用对象数据库,以减少其对数据的维护负担。这意味着对象数据库或对象关系技术正在存储,检索,更新和维护数据的照顾。这个对象关系型技术的核心部分是映射orm.xml中的文件。随着XML不需要编译,可以很容易地进行修改多个数据源较少的管理。
对象关系映射
对象关系映射(ORM)简要地告诉什么是ORM以及它是如何工作。 ORM是从对象类型的数据隐蔽到关系型,反之亦然编程能力。
ORM主要特征是映射或绑定一个目的是它的数据库中的数据。而映射,我们要考虑的任何其他表中的数据,数据的类型,并具有自一个或多个实体的关系。
高级功能
-
惯用的持久性:它使您能够编写使用面向对象的类持久性类。
-
高性能:它有许多抓取技术和充满希望的锁定技术。
-
可靠的:它是高度稳定的,被很多专业程序员。
ORM架构
在ORM架构如下所示。
在上述体系结构解释了如何对象数据存储到关系数据库中的三个阶段。
第1阶段
第一阶段,命名为对象数据阶段,包括POJO类,服务接口和类。它是主要的业务组件层,其具有业务逻辑操作和属性。
例如,让我们举个员工数据库的架构。
-
Employee POJO类包含属性,如ID,姓名,工资和标识。它也包含类似属性setter和getter方法。
-
Employee DAO/服务类包含服务方法,如建立员工,发现员工和删除员工。
第2阶段
第二阶段,称为映射或持久性的阶段,包括JPA提供者,映射文件(orm.xml),JPA装载器和对象网格。
-
JPA提供者:这是一个包含了JPA(javax.persistence)供应的产品。例如EclipseLink,Toplink,Hibernate等。
-
映射文件:映射文件(orm.xml中)包含在关系数据库中的一个POJO类的数据和数据之间的映射配置。
-
JPA装载器:在JPA加载器的工作原理就像一个高速缓冲存储器。它可以加载关系网格数据。它的工作原理类似数据库的副本与服务类POJO数据(POJO类的属性)进行交互。
-
对象网格:它是可存储的关系数据的副本,如高速缓冲存储器的临时位置。对数据库的所有查询首先被实现在对象网格的数据。只有提交它才会影响到主数据库。
第3阶段
第三阶段是关系数据相关。它包含在逻辑上连接到所述业务组件的关系数据。如上所讨论的,仅当业务组件提交该数据,它被存储到数据库中的物理。在此之前,已修改的数据被存储在高速缓冲存储器作为一个网格格式。在获取数据的过程和存储数据是相同的。
上述三个阶段的编程交互的机制被称为对象关系映射。
Mapping.xml
mapping.xml文件指示JPA的供应者来映射实体类与数据库表。
让我们以Employee实体包含四个属性的一个例子。POJO类Employee实体的命名为:Employee.java,如下:
public class Employee { private int eid; private String ename; private double salary; private String deg; public Employee(int eid, String ename, double salary, String deg) { super( ); this.eid = eid; this.ename = ename; th