iBatisNet介绍

介绍
欢迎来到 iBATISNet Database Layer! 这个框架将让你能够更好的在 dotnet 应用中设计和实现实体层。这个框架有两个主要的组成部分,一个是 SQL Maps ,另一个是 Data Access Objects
SQL Maps
Sql Maps 是这个框架中最激动人心的部分,它是整个 iBATIS Database Layer 的核心价值所在。通过使用 Sql Maps 你可以显著的节约数据库操作的代码量。 SQL Maps 使用一个简单的 XML 文件来实现从实体到 SQL statements 的映射。跟其他的框架或者对象映射工具相比, SQL Maps 最大的优势是简单。它需要学习的东西很少,在连接表或复杂查询时也不需要复杂的 scheme ,使用 SQL Maps ,你可以自由的使用 SQL 语句。
Data Access Objects (DAO)
     当我们开发灵活的 DOTNET 应用时,有一个好主意就是通过一个通用 API 层把实体操作的细节封装起来。 Data Access Objects 允许你通过一个简单接口的来操作数据,从而隐藏了实现的细节。使用 DAO ,你可以动态配置你的应用程序来访问不同的实体存储机制。如果你有一个复杂的应用需要用到几个不同的数据库, DAO 可以让你建立一个一致的 API ,让系统的其他部分来调用。
Examples
NPetShop Example Application   一个在线商店。
SQL Maps (IBatisNet.DataMapper.*)
概念
    SQL Map API 允许程序员很简单的把 DOTNET 对象映射到 PreparedStatement 参数或者 ResultMap SQL Maps 的机制很简单,提供一个框架,来实现用 20% 的代码来实现 80% ADO.NET 的功能。
How does it work?
    SQL Maps 提供一个简单的框架,通过 XML 描述来映射 DOTNET 实体类, MAP implementations 甚至原始类型的包装 (String,Integer ) Ado.net PreparedStatement 。想法很简单,基本的步骤如下:
1) 提供一个参数,无论是对象还是一个Nativel类型。参数将被用于设置sql语句或存储过程的运行时的值
2) 通过传送参数和在你的xml描述中的声明名字或者存储过程来执行映射。这一步将是魔术般的步骤。框架将会准备sql声明或者存储过程,用你的参数设置运行时数据值,执行sql语句或者存储过程,返回结果。
3) 在更新的时候,更新的行数将会被返回。在查询的时候,返回的将是一个对象或者对象的集合。象参数,结果对象,或者对象的集合,可以是一个plan-old对象或者native类型。
流程图如下:

Data Access Objects 在开发健壮的 Dotnet 应用程序时,用分层的持久性实现的详细说明通常是一个好主意。 Data Access Objects DAO )允许您创建简单的组件,提供对数据的访问,而无需将实现的详细说明展示给应用程序的其余部分。使用 DAO 可以动态地配置应用程序,从而使用不同的持久性机制。如果您有一个涉及许多不同的数据库和持久性方法的复杂程序,那么 DAO 可以帮助您创建一个用于您将使用的其他应用程序的持久性 API
通过允许将动态的、可插入的 DAO 组件很容易地换入换出,可以使用 iBATIS Data Access Objects API 帮助隐藏持久性层实现的细节,不让其他应用程序知道。例如,您可以使用两个特殊的 DAO ,一个使用 iBATIS SQL Maps 框架将对象持久存储到数据库中,另一个则使用 NHibernate 框架。类似的一个例子将是一个为另一个 DAO 提供缓存服务的 DAO 。根据使用情况(例如,有限的数据库性能与有限的内存相对),您可以插入这个缓存 DAO ,或者可以使用标准的非缓存 DAO 。这些例子展示了 DAO 模式提供的一些便利;然而, DAO 提供的安全性更为重要。 DAO 模式可以保护应用程序,使之不必与特定持久性方法捆绑在一起。在当前解决方案不适合(甚至不可用)的情况下,可以创建新的 DAO 实现来支持新的解决方案,而不必修改其他应用层中的任何代码。

你可能感兴趣的:(DAO,sql,框架,数据库,ibatis,Access)