zoukankan      html  css  js  c++  java
  • 深入理解 ORM框架

    1、ORM是什么?

    object Relational mapping 对象关系映射,是一种为了解决面向对象与关系型数据库存在不匹配现象的技术,简单说,orm通过描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系型数据库中

    orm方法论的三个原则:
    简单:以最基本的形式建模数据
    传达性:数据库接口被任何人都能理解的语言文档化
    精确性:基于数据库模型创建正确的标准化结构

    为什么使用ORM:
    当你开发一个程序的时候,不使用orm,可能会学不少数据访问层的代码,用来从数据库保存、删除、读取对象的信息,但是其中很多代码是重复的,可以减少代码量

    ORM解决的主要问题是对象关系映射,域模型和关系模型分别建立在概念模型的基础上,域模型是面向对象的,而关系模型是面向关系的,一般情况下,一个持久类和一个表的对应,类的每个实例对应表中的一条记录,类的每个属性对应表的每个字段

    ORM技术特点:
    1、提高了开发效率,由于ORM可以自动对Entity对象与数据库表中进行字段和属性的映射,所以我们就不需要了数据访问层
    2、ORM提供了对数据库的映射,不用写sql语句就可以操作数据库


    ORM优缺点
    优点:
    提高开发效率,降低开发成本
    纯粹的面向对象开发
    可移植

    缺点
    1、从系统结构上来看,采用ORM框架一般分多层,系统的层次多了,会降低系统性能,ORM是完全面向对象的做法,而面向对象的做法也会性能产生影响
    2、在数据库应用上可能被误用,主要体现在对持久对象的提取和数据加工处理上,如果用上ORM,可能将全部的数据提取到内存对象中,这就会产生性能问题
    3、在做对象持久化时,ORM会持久化所有的对象,我们不希望这样,也会降低程序性能
    4、在进行多级联表查询时,ORM语法会变得复杂
    5、EF对各个数据的支持程度是不对称的

    什么是持久化为什么要持久化
    持久,即把内存中的对象永久保存到设备存储中,持久化的主要应用是讲内存中的数据存储在关系型数据库中,也可存储到磁盘文件和XML中

    持久层:将数据使用者和数据实体相关联

    orm操作数据库流程图:

     

    快乐而轻松的写代码
  • 相关阅读:
    C#选择文件、选择文件夹、打开文件
    如何去掉数据库重复记录并且只保留一条记录
    SQL总结——存储过程
    SQL Server中的标识列
    c# 获取键盘的输入
    C# 中BindingSource 的用法
    WinForm timer 控件
    C#获得窗口控件句柄
    checkedListBox的使用
    c++从文件中读取特定字符串问题的总结
  • 原文地址:https://www.cnblogs.com/libei/p/10427784.html
Copyright © 2011-2022 走看看