关于使用ADO.NET编程连接池讲解

开发 后端
这里就ADO.NET编程连接字符串,连接池还有保存连接字符串的使用都详细做出介绍,希望大家可以从中得到技术上的提高。

ADO.NET经过长时间的发展,很多用户都很了解ADO.NET编程了,这里我发表一下个人理解,和大家讨论讨论。要想充分发挥ADO.NET的优势,不仅需要全面、深入理解ADO.net编程模型,及时总结经验、技巧也十分重要。ADO已经有多年的实践经验,ADO.NET以此为基础,提供了更加丰富、强大的工具;尽管如此,ADO.NET的设计目标毕竟不是提供一个即插即用的工具,它不会把所有的编程工作简化到仅靠鼠标点击就可以完成的程度。

#T#ADO.NET编程包含了一大堆代表数据访问模型中各种逻辑实体的对象,其中尤以连接、事务这两个对象最为重要。连接的作用是建立一个与后端数据库通信的通道,创建连接对象必须以特定的.NET数据提供者为基础。事务对象可以在已有的连接对象上创建,也可以通过显式地执行一个BEGIN TRAN SQL语句创建。虽然理论很简单,但实际上,围绕连接、事务的不确定因素很多,而且它们对应用整体的稳定性和效率有着至关紧要的影响。

如何保存连接字符串,保护连接字符串中可能包含的敏感信息(例如密码)?怎样设计一个完善的数据访问策略,既考虑到安全性(即身份验证、授权),却又不至于对性能和可伸缩性造成太大的影响?如果需要用到事务,那么如何高效地实现和控制事务?采用自动事务还是手动事务?在使用ADO.NET时,这些问题都必须仔细考虑。

连接字符串,连接池

数据库连接是一种重要的、有限的、开销昂贵的资源,因此用好连接对象是任何应用的最基本的要求。使用数据库连接的要点可总结如下:
◆保存连接字符串应注意安全。
◆打开连接应迟,关闭连接应早。

连接字符串是访问数据库的钥匙。连接字符串除了说明要访问的数据之外,还包含了用户为什么可以访问那些数据的身份证明。在执行数据库操作时,用户身份证明是确定数据访问权限的最重要的因素。

保存连接字符串

目前,硬编码的连接字符串具有最好的性能,因为它们直接编译进了应用的代码之中。然而,硬编码的字符串影响程序的灵活性,一旦连接字符串改变,应用程序必须重新编译。将连接字符串保存到外部提高了灵活性,代价是访问外部字符串需要付出额外的开销。但在绝大多数情况下,由此导致的性能开销可以忽略不计,真正需要担心的是安全问题。例如,攻击者可能修改、窃取连接字符串。将连接字符串保存到外部环境的常见途径有:配置文件,UDL文件,Windows注册表。

.NET框架配置文件以纯文本文件的形式部署,访问方便。如果连接字符串包含密码,文本格式将是最大的缺陷所在,因为密码将以明文的形式保存。可以考虑引入一个专用的加密/解密引擎,不过这部分工作需要开发者自己完成。

责任编辑:田树 来源: 博客
相关推荐

2009-11-11 14:04:14

ADO.NET连接池

2009-12-23 14:53:28

ADO.NET连接池

2009-11-03 16:51:04

ADO.NET连接池观

2009-12-23 09:01:15

ADO.NET连接池

2009-11-13 13:11:37

ADO.NET连接池

2009-12-23 09:14:52

ADO.NET连接池

2009-12-30 16:22:58

ADO.NET连接池

2009-11-03 16:04:29

2010-01-05 10:11:23

ADO.NET连接池

2009-12-24 09:49:02

ADO.Net连接池

2009-11-12 09:25:21

ADO.NET连接池

2009-11-04 08:38:30

ADO.NET库文件

2010-02-25 09:06:40

ADO.NET连接池

2009-11-03 16:57:34

ADO.NET FAQ

2009-07-20 14:03:43

Ado.net连接池

2009-12-30 16:26:12

ADO.NET连接池

2009-06-26 14:41:48

ADO.NET

2010-01-04 16:18:13

ADO.NET连接池

2009-11-12 08:59:18

ADO.NET数据库连

2009-07-21 11:05:49

关闭ADO.NET连接
点赞
收藏

51CTO技术栈公众号