zoukankan      html  css  js  c++  java
  • MVC系列随笔一

    学习MVC我做了一些笔记,在学习MVC之前呢,我们需要先了解和MVC一起使用的小伙伴们

    做事情要抓重点:

         为什么要学MVC
            MVC的好处
            MVC如何使用,MVC的特点
            MVC的原理
            这种MVC模式能否扩展

    -》ORM 框架

    1.从广义上理解:ORM框架 面向对象的对象模型和关系型数据库的数据结构之间的转换
       从狭义上理解:ORM可以被认为是,基于关系型数据库的数据存储,实现一个虚拟的面向对象的数据访问接口。

    -》EF框架(Entity Framework) 
    一种ORM框架→工作机制:<1>追踪实体  <2>生成sql语句  <3>调用ado.net执行数据库操作
    csdl:概念架构定义语言
    ssdl:存储架构定义语言(逻辑模型)
    msl:映射架构语言
    简称:EDM   .edmx 本质就是一个xml文件
    EF通过EntityClient(基于Provider模式),与ADO.NET 2.0相似。向EDM发送EntitySql操作Entity,ADO.NET 2.0是向数据库发送sql。所有发往EDM的操作都要经过EntityClient,包括Linq to Entity

    优缺点:
        优点:可以使用XML进行定义,可以动态添加对象映射到数据库中(生成DDL-Data Define Language),改动数据库不会影响bll业务逻辑层
     缺点:EF第一次运行的时候,需要对EDM进行分析读取,导致有些慢,以后不会慢
        
    提供从关系数据库构架到对象的映射

    延迟加载机制(如果启用属性,启用延迟加载)
     优点:用的什么数据才去查,有利于性能
     缺点:数据了太大的时候一下加载到内存中,内存会爆掉(使用foreach的时候)
         外键太多会影响性能(查主表的时候,如果用到子表会把子表查出来),不要访问子表太多
        
    EF上下文维护有三种方式(避免多个上下文,避免脏数据):
      <1>全局唯一,只用一个上下文,缺点:EF有缓存,当数据渐渐增多时,缓存会吃掉内存,pass掉
      <2>在web开发中,一次请求中用一个实例,请求解除,释放掉
      <3>线程唯一,一个线程有一个上下文实例
    补充:DataSet类非常类似于数据库的结构,它包含DataTable,DataRow,DataColumn和DataRelation类,而不提供对象支持

  • 相关阅读:
    Python : locals and globals
    windows下替代SSH,Xshell软件的mobaxterm
    python上下文管理协议
    samtools flagstat
    linux和普通文本的换行问题
    使用plenv安装perl,并使其支持多线程
    PHP动态图像处理
    PHP常用功能模块
    在vim中使用zencoding/Emmet
    PHP字符串处理与正则表达式
  • 原文地址:https://www.cnblogs.com/dongbo19910728/p/4305653.html
Copyright © 2011-2022 走看看