网站首页 > 技术文章 正文
一、数据库程序在线访问方式和 ORM 方式的优缺点:
数据库程序在线访问方式优点:
1、性能比 ORM 好
2、可以处理复杂查询语句
数据库程序在线访问方式缺点:
1、要求程序员懂 SQL 语句
2、修改与维护相对困难
ORM 优点:
1、使用 ORM 可以大大降低学习和开发成本。
2、程序员不用再写 SQL 来进行数据库操作。
3、减少程序的代码量。
4、降低由于 SQL 代码质量差而带来的影响。
ORM 缺点
1、不太容易处理复杂查询语句。
2、性能较直接用 SQL 差。
ORM,即 Object-Relationl Mapping,它在关系型数据库和对象之间作一个映射,这样,我们在具体的操作数据库的时候,就不需要再去和复杂的 SQL 语句打交道,只要像平时操作对象一样操作即可。当你开发一个应用程序的时候(不使用 OR Mapping),可能会涉及许多数据访问层的代码,用来从数据库保存、删除、读取对象信息等等,然而这些代码写起来总是重复的。
一个更好的办法就是引入 OR Mapping。实质上,一个 OR Mapping 会为你生成 DAL。与其自己写 DAL 代码,不如用 OR Mapping,你只需要关心对象就好。
使用 ORM 可以大大降低学习和开发成本。而在实际的开发中,真正对客户有价值的是其独特的业务功能,而不应该把大量时间花费在编写数据访问、CRUD 方法、后期的 Bug 查找和维护上。在使用 ORM 之后,ORM 框架已经把数据库转变成了我们熟悉的对象,我们将只需要了解面向对象开发就可以实现数据库应用程序的开发,不需要浪费时间在 SQL 上。同时也可减少代码量,减少数据层出错机会。
通过 Cache 的实现,能够对性能进行调优,实现了 ORM 区隔了实际数据存储和业务层之间的关系,能够对每一层进行单独跟踪,增加了性能优化的可能。
二、工厂模式
工厂模式分抽象工厂与工厂方法。
抽象工厂设计模式提供一个接口,可以创建一系列相关或相互依赖的对象,而无需指定它们具体的类。其优点是可以非常方便的创建一系列的对象,其使用场景也是创建系列对象的情况。可以针对 Oracle、MySQL、SQLServer 分别建立抽象工厂,若指定当前工厂为 Oracle 工厂,则创建出来的数据库连接,数据集等一系列的对象都是符合 Oracle 操作要求的。这样便于数据库之间的切换。
猜你喜欢
- 2024-10-20 图解oracle数据库SQL的各个连接方式:inner join、left join等
- 2024-10-20 一文看懂oracle三大类型与隐式数据类型转换
- 2024-10-20 oracle学习随笔一(索引) oracle索引怎么使用
- 2024-10-20 Oracle解析复杂json的方法 oracle处理json格式数据
- 2024-10-20 oracle 各种报告收集方法 oracle收集表信息
- 2024-10-20 详解oracle RMAN 用法:连接方式+基本指令
- 2024-10-20 Python 操作Oracle数据库常用的方法和工具
- 2024-10-20 关于数据库oracle认证方式 oracle数据库管理员认证
- 2024-10-20 详解Oracle并行模式--概念、机制、并行设置、并行度
- 2024-10-20 Oracle实验--详解Oracle 11g如何收集多列统计信息
你 发表评论:
欢迎- 05-10如何优化数据库和前端之间的交互?
- 05-10前端代码优化小秘籍(前端优化24条建议)
- 05-10VS Code当中的15个神仙插件,值得收藏
- 05-10如何自己开发一个Google浏览器插件?
- 05-10前端流行框架Vue3教程:14. 组件传递Props效验
- 05-10吃了一年的SU,最好用的插件都在这了
- 05-10前端必看!这款神器让网站界面告别千篇一律
- 05-10程序员请收好:10个非常有用的 Visual Studio Code 插件
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端懒加载 (45)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle查询数据库 (45)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)