NHibernate总结
1.对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。 2.NHibernate 从数据库底层来持久化你的.Net 对象到关系型数据库。你的代码仅仅和对象关联,NHibernat 自动产生SQL语句,并确保对象提交到正确的表和字段中去。 3.常用对象:Configuration:配置文件和模型初始化;ISessionFactory:处理数据库所有操作;ISession:一次数据库操作;IStatelessSession:同ISession,差异是执行完操作马上关闭,不会有延迟加载数据;ITransaction:事务。 4.外连接抓取: 对一个特定关联来说,通过在XML映射文件中设置outer-join属性可以控制是否开启抓取功能。 设置hibernate.use_outer_join为false将禁用全局的外连接抓取,设置为true将启用所有一对一(one-to-one)和多对一(many to one)关联中的外连接抓取默认情况下,它被设置为auto,即自动外连接。但是,一对多关联和集合永远不会使用外连接抓取,除非对每个特定的管理进行明确声明