ORM-对象关系映射

来源:互联网 发布:php 不显示warning 编辑:程序博客网 时间:2024/05/07 11:17
 对象关系映射(Object Relational Mapping,简称ORM)是为了解决面向对象与关系型数据库存在的互不匹配的现象的技术。本质上就是将数据从一种形式转换到另外一种形式。 这也同时暗示着额外的执行开销;然而,如果ORM作为一种中间件实现,则会有很多机会做优化,而这些在手写的持久层并不存在。 更重要的是用于控制转换的元数据需要提供和管理。 实际应用中即在关系型数据库和业务实体对象之间作一个映射,这样,我们在具体的操作业务对象的时候,就不需要再去和复杂的SQL语句打交道,只要像平时操作对象一样操作它就可以了。

   ORM框架就是用于实现ORM技术的程序。
   常见的ORM框架有:Hibernate、iBATIS、TopLink、Castor JDO、Apache OJB等。
   Java中ORM的原理: 先说ORM的实现原理,其实,要实现JavaBean的属性到数据库表的字段的映射,任何ORM框架不外乎是读某个配置文件把JavaBean的属 性和数据库表的字段自动关联起来,当从数据库Query时,自动把字段的值塞进JavaBean的对应属性里,当做INSERT或UPDATE时,自动把 JavaBean的属性值绑定到SQL语句中。
   一个简单的映射例子(hibernate),我们定义User对象和数据库中user表之间的关联,user表中只有两列:id和name:

<hibernate-mapping>  <class name="sample.orm.hibernate.User" table="user" catalog="test">  <id name="userID" type="java.lang.Integer">  <column name="id" />  <generator class="assigned" />  </id>  <property name="userName" type="java.lang.String">  <column name="name" />  </property>  </class>  </hibernate-mapping>
1 0
原创粉丝点击