编程思考 开发框架基础

编程思考 开发框架基础

数据库ORM框架:
NHIBERATE:
NHibernate是一个基于.Net,用于关系数据库的对象持久化类库.它是著名的Hibernate的.Net版本.
NHibernate用于把你的.Net对象持久化到底层的关系数据库中.你完全不用自己编写Sql语句去操作这些对象,NH会代替你做。你的代码里面只需要关心这些对象,NH自动生成sql语句并能为你取到正确的数据。
 
NH的基本步骤: 
1.       在数据库中建表.
2.       创建需要被持久化的.Net类.
3.       创建XML映射文件,以告诉NH怎样持久化这些类的属性.
4.       创建NH的配置文件,以告诉NH怎样连接数据库.
5.       使用NH提供的API,获得数据各种操作
 
 
 
 
IBATIS.NET:
iBATIS一词来源于“internet”和“abatis”的组合,是一个由Clinton 
Begin在2001年发起的开放源代码项目。最初侧重密码软件的开发,现在是一个持久层框架。iBATIS提供的持久层框架包括SQLMaps和Data Access Objects(DAO)。iBATIS 目前提供了三种语言实现的版本,包括:Java、.NET以及Ruby。IBATIS.NET是其.net版本的名称
 
 
 
 
LINQ:
LINQ是.NET语言集成查询,.NET Framework 3.5 版中一项突破性的创新,它在对象领域和数据领域之间架起了一座桥梁。传统上,针对数据的查询都是以简单的字符串表示,而没有编译时类型检查或IntelliSense支持。此外,还必须针对以下各种数据源学习不同的查询语言:SQL 数据库、XML 文档、各种 Web 服务等。LINQ 使查询成为 C# 和 Visual Basic 中的语言集成。可以使用语言关键字和熟悉的运算符针对强类型化对象集合编写查询。可以为SQL Server 数据库、XML文档、ADO.NET 数据集以及支持 IEnumerable 或泛型 IEnumerable<(Of <(T>)>) 接口的任意对象集合查询。
 
 
 
 
ADO.NET Entity Framework:
实体框架 是 ADO.NET 中的一组支持开发面向数据的软件应用程序的技术。实体框架 使开发人员可以采用特定于域的对象和属性(如客户和客户地址)的形式使用数据,而不必自己考虑存储这些数据的基础数据库表和列。通过提升开发人员在处理数据时可以使用的抽象级别并减少创建和维护面向数据的应用程序所需的代码。因为 实体框架 是 .NET Framework 的一个组件,所以 实体框架 应用程序可以在安装了 .NET Framework 3.5 Service Pack 1 (SP1) 的任何计算机上运行。
 
为概念模型赋予生命
数据建模的一种由来已久且常见的设计模式是将数据模型分为三个部分:概念模型、逻辑模型和物理模型。概念模型定义要建模的系统中的实体和关系。关系数据库的逻辑模型通过外键约束将实体和关系规范化到表中。物理模型通过指定分区和索引等存储详细信息实现特定数据引擎的功能。
 
物理模型由数据库管理员进行优化以改善性能,而编写应用程序代码的程序员的工作主要限制为通过编写 SQL 查询和调用存储过程来处理逻辑模型。概念模型通常用作捕获和传达应用程序的要求的工具,常常以静态关系图的形式供项目早期阶段查看和讨论,随后被弃用。许多开发团队会跳过概念模型的创建,直接从指定关系数据库中的表、列和键开始工作。
 
实体框架 可使开发人员查询概念模型中的实体和关系,同时依赖于 实体框架 将这些操作转换为特定于数据源的命令,从而为概念模型赋予生命。这使应用程序不再对特定数据源具有硬编码的依赖性。概念模型、存储模型以及两个模型之间的映射以外部规范(称为 实体数据模型 (EDM))表示。可以根据需要对存储模型和映射进行更改,而不需要对概念模型、数据类或应用程序代码进行更改。存储模型是特定于提供程序的,因此可以在各种数据源之间使用一致的概念模型。
 
EDM 由以下三种模型和具有相应文件扩展名的映射文件进行定义。
 
概念架构定义语言文件 (.csdl) — 定义概念模型。
 
存储架构定义语言文件 (.ssdl) — 定义存储模型(又称逻辑模型)。
 
映射规范语言文件 (.msl) — 定义存储模型与概念模型之间的映射。
 
实体框架 使用这些基于 XML 的模型和映射文件将对概念模型中的实体和关系的创建、读取、更新和删除操作转换为数据源中的等效操作。EDM 甚至支持将概念模型中的实体映射到数据源中的存储过程。有关更多信息,请参见 实体框架中的数据建模。
 
将对象映射到数据
面向对象的编程对与数据存储系统的交互提出了一个难题。虽然类的组织通常可比较接近地反映出关系数据库表的组织,但是拟合程度并不完美。多个规范化表通常对应于单个类,类之间的关系并未按照表之间的关系一样表示。例如,若要表示某个销售订单的客户,一个 Order 类可使用包含对 Customer 类实例的引用的属性,但是数据库中的一个 Order 表行包含的一个外键列(或列集)具有对应于 Customer 表中的主键值的值。一个 Customer 类可以具有名为 Orders 的属性,该属性包含 Order 类的实例的集合,但是数据库中的 Customer 表不包含相应的列。
 
现有解决方案只能通过将面向对象的类和属性映射到关系表和列来尝试弥合这种通常称为“阻抗不匹配”的差异。实体框架 没有采用这种传统方法,而是将逻辑模型中的关系表、列和外键约束映射到概念模型中的实体和关系。这在定义对象和优化逻辑模型方面都增加了灵活性。实体数据模型 工具基于概念模型生成可扩展数据类。这些类是分部类,可以通过开发人员添加的其他成员进行扩展。为特定概念模型生成的类派生自一些基类,这些基类提供对象服务以将实体具体化为对象以及跟踪和保存更改。开发人员可以使用这些生成的类以由导航属性关联起来的对象的形式来处理实体和关系。
 
 
 
 
Javascript框架
ExtJS:
ExtJS是一个用javascript写的,主要用于创建前端用户界面,是一个与后台技术无关的前端ajax框架。因此,可以把ExtJS用在.Net、Java、Php等各种开发语言开发的应用中。ExtJs 最开始基于 YUI 技术,由开发人员 Jack Slocum 开发,通过参考 Java Swing等机制来组织可视化组件,无论从 UI 界面上 CSS 样式的应用,到数据解析上的异常处理,都可算是一款不可多得的 JavaScript 客户端技术的精品。

 

转载于:https://www.cnblogs.com/Sky-cloudless/p/4254939.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109570.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 交易真的能稳定盈利吗_如何在股市稳定盈利

    交易真的能稳定盈利吗_如何在股市稳定盈利作为一个已经稳定盈利的人,我来解答下吧。我主要做外汇,期货和期权,A股也做,但是中国的股票你们知道的,做空的限制太多,融券融不到,股指期货还限制开仓和提高杠杆率。所以要等一个轮回需要5年以上,所以股票等待建仓机会比较漫长。从交易者的层面来看,我一般把他们分为这么几类人:一,幼儿园阶段:无知者无畏这种人没做过交易,只是从朋友那里听说,交易能赚大钱,或者是书刊杂志上读了一些交易大师的成功学传记,然后就跟打了鸡血似的,觉得自己也能和他们一样在金融市场赚到很多钱,这些人没有风控意识,甚至感觉这个市场

    2022年10月4日
    3
  • lua字符串截取_lua删除数组元素

    lua字符串截取_lua删除数组元素localstr=”helloworld!”string.sub(str,1,string.len(str)-1)–hellowordstring.sub(str,起始位置,整个字符串的长度)–获取指定位置长度的字符串string.len(目标字符串)–获取字符串的长度

    2022年10月6日
    4
  • vue中数组长度_如何在Vue.js中获取计算数组的长度

    vue中数组长度_如何在Vue.js中获取计算数组的长度我使用的是一个计算方法 它检查用户是否单击了搜索输入 然后检查 JSON 文件 以将用户的查询与 JSON 文件中的字符串匹配 这是我当前的代码 computed filteredPriz function if this searchInputC true returnthis prizes filter prize gt return

    2025年11月10日
    4
  • 3DES 加解密

    3DES 加解密

    2021年8月25日
    59
  • x201换风扇_笔记本怎么换风扇 ThinkPad X201i换风扇图文教程

    x201换风扇_笔记本怎么换风扇 ThinkPad X201i换风扇图文教程ThinkPadX201i换电扇图文教程:拆机之前,我们需求先对X201i的散热电扇在停止了开端的理解,得知价钱从10元左右的单电扇,到上百的散热全体都有,而且还分东芝产和松下产等不同产地的,小编选择了松下产的整套散热(包括散热片和电扇),价钱为150,电扇固定办法为小螺丝。假定拿到电脑修理店去换的话,小编猜测我们所需求的费用至少在200-300元之间。一:拆机前的准备螺丝刀,小毛刷和安排螺丝的…

    2022年6月27日
    50
  • java分页代码_基本分页存储管理java代码

    java分页代码_基本分页存储管理java代码在java项目中不使用mybatis的pageHelper进行数据分页:1.分页工具类编写:importjava.util.List;publicclassPageModel&lt;E&gt;{//结果集privateList&lt;E&gt;list;//查询记录数privateinttotalRecords;…

    2022年10月3日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号