zoukankan      html  css  js  c++  java
  • MYSQL——ORM框架

    1、ORM(Object Relational Mapping)框架采用元数据来描述对象与关系映射的细节,元数据一般采用XML格式,并且存放在专门的对象一映射文件中。简单理解为一种框架的格式

     只要提供了持久化类与表的映射关系,ORM框架在运行时就能参照映射文件的信息,把对象持久化到数据库中。

    当前ORM框架主要有五种:Hibernate(Nhibernate),iBATIS,mybatis,EclipseLink,JFinal。

    2、ORM框架做的最多的便是“缓存”。

    3、优点:

    ORM框架降低了学习门槛,一个对sql语句并不熟悉的开发人员也可以很容易通过简易的ORM框架Api进行数据库的操作。

    提高了开发效率,ORM使我们减少很多繁琐重复的工作量,让我们的注意力集中在实现业务上。

    一定程度上提高了程序的响应速度。

    4、缺点:

    ORM框架的弊端也很明显,框架会自动生成Sql语句,所有场景的sql语句都是同一套模板,难以自动针对场景对sql语句进行良好的优化,某种场景下很容易生成执行很慢的sql语句。如果让DBA看到这样的执行sql,必定引来抓狂崩溃。

    ORM框架只是为了满足绝大多数的场景而生的,特殊需要优化sql的场景下,我们完全可以直接使用驱动手动执行sql或使用ORM框架内提供的sql语句api进行自定义sql语句。

    5、市面常见的ORM框架:

    .Net体系:
        EntityFramework,功能强大,lambda api,有些庞大臃肿,很多功能用不上
        Dapper,轻量级,数据库种类支持丰富,sql写法灵活,运行速度快
        CYQ.Data,自动化,日志,分布式缓存,弱类型,api简介
    
    Java体系:
        MyBatis,映射采用Xml配置sql,多种映射关系灵活配置,sql需要手动编写到配置,轻量级,半自动
        Hibernate,Xml配置sql,支持HQL语句,移植性好,日志,重量级,功能全,全自动
        Speedment,lambda api,依赖java8

     6、SQLAlchemy

      SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果。

    更多关于SQLAlchemy查询https://www.cnblogs.com/linhaifeng/articles/7560153.html

  • 相关阅读:
    分类与监督学习,朴素贝叶斯分类算法
    K-means算法应用:图片压缩
    聚类--K均值算法:自主实现与sklearn.cluster.KMeans调用
    numpy统计分布显示
    10.11作业numpy数据集练习
    9.29作业
    CAGradientlayer设置视图背景的渐变效果
    dyld: Library not loaded: @rpath/libswiftCore.dylib
    解读NSString之性能分析
    iOS UIButton超出父视图无法点击解决方法
  • 原文地址:https://www.cnblogs.com/guojieying/p/13641457.html
Copyright © 2011-2022 走看看