ORMapping基础.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
ORMapping,全称为Object-Relational Mapping,是将对象模型与关系数据库进行映射的技术,使得程序员可以使用面向对象的方式来操作数据库,而无需关注底层的SQL语句。本章主要介绍ORMapping的基础知识,以NHibernate框架为例进行阐述。 映射声明是通过XML文档完成的,该文档定义了对象与数据库表之间的对应关系。映射语言以.NET为中心,这意味着映射是基于持久化类的定义,而不是直接基于数据库表的定义。虽然许多用户选择手动编写XML映射文档,但也有一些工具如MyGeneration可以自动生成这些配置文档。 例如,下面是一个简单的映射文档示例: ```xml <hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" namespace="Eg" assembly="Eg"> <class name="Cat" table="CATS" discriminator-value="C"> <id name="Id" column="uid" type="Int64"> <generator class="hilo"/> </id> ... <subclass name="DomesticCat" discriminator-value="D"> <property name="Name" type="String"/> </subclass> </class> <class name="Dog"> <!-- mapping for Dog could go here --> </class> </hibernate-mapping> ``` 在这个例子中,`class`元素表示一个.NET类`Cat`映射到数据库表`CATS`,`id`元素定义了主键,`generator`元素指定主键生成策略。`discriminator`用于多态性,`subclass`元素表示子类`DomesticCat`,并且可以添加额外的属性映射。 映射文档中还包括其他元素,如`property`用于字段映射,`many-to-one`表示多对一的关系,`set`、`list`、`bag`和`map`则用于表示集合关系,如一对多或多对多。例如,`<many-to-one name="Mate" column="mate_id"/>`表示`Cat`类中的`Mate`属性与另一张表的主键关联。 此外,`hibernate-mapping`文档需要使用特定的命名空间和schema,如`urn:nhibernate-mapping-2.0`,这个schema通常包含在NHibernate资源中。在开发环境中,可能需要将schema文件复制到相应目录以供Visual Studio等IDE使用。 映射文档还支持一些属性,如`not-null`和`update`,它们可以影响数据库schema的生成,以及实体行为。例如,`not-null="true"`表示字段不允许为空,`update="false"`表示字段在更新时不改变。 ORMapping是实现对象模型与关系型数据之间转换的关键技术,通过NHibernate提供的XML映射文档,开发者可以方便地定义对象和数据库之间的关系,从而简化数据访问层的代码,提高开发效率。理解并熟练掌握ORMapping对于进行.NET平台下的数据持久化工作至关重要。
剩余27页未读,继续阅读
- 粉丝: 17
- 资源: 26万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助