为什么以config形式配置数据库连接

更新时间:02-03 教程 由 思君 分享

为什么以config形式配置数据库连接?

因为如果将数据库连接配置成config,能够符合包的类型需求,能够更方便的进行编辑和应用。

将数据库连接配置成config,config对象对应于javax.servlet.servletConfig类,此类位于servlet-api.jar包中。

需要注意的 VS2005 在IDE模式下会将信息写入 *.vshost.exe.config,并且在程序关闭时覆写该文件,因此您可能看不到您写入的配置数据,只要在资源管理其中执行 *.exe 文件,您就可以在 *.exe.config 文件中看到结果了。

config对象的几个方法:

(1)public String getParameter(String name);

返回制定的名称name初始化参数的值,如果参数不存在则返回null。

(2)public java.util.Enumeration getinitParameterNames();

得到所有初始化参数名称的枚举。

(3)public ServletContext getServletContext();

返回Servlet或JSP页面所属的ServletContext的一个引用。

(4)public String getServletName();

返回Servlet实例或JSP页面的名称,此名称可以在Web应用部署描述文件中指定,对于一个未注册(也就是未命名)Servlet实例或JSP页面,将返回该Servlet类的类名。

在网站开发中,数据库操作是经常要用到的操作,ASP.Net中一般做法是在web.config中配置数据库连接代码,然后在程序中调用数据库连接代码,这样做的好处就是当数据库连接代码需要改变的时候,我们只要修改web.config中的数据库连接代码即可,而不必在修改每一个页面中的数据库连接代码。

在ASP.NET中有两种配置数据库连接代码的方式,它们分别是 appSettings 和 connectionStrings 。在使用 appSettings 和 connectionStrings 配置数据库连接代码时,可分别在 下添加如下代码:

1. appSettings

< appSettings >

< add key ="conn" value ="server=服务器名;database=数据库名;uid=用户名;password=密码;" />

2. connectionStrings

< connectionStrings >

< add name ="conn" connectionString ="server=服务器名;database=数据库名;uid=用户名;password=密码" providerName ="System.Data.SqlClient" />

appSettings 和 connectionStrings 的区别:(摘自http://www.cnblogs.com/kerry1986/archive/2009/07/08/1518895.html)

(1) appSettings 是在 2003 中常用的,connectionStrings 是在 2005 中常用的;

(2) 使用 connectionStrings 的好处:

第一,可将连接字符串加密,使用MS的一个加密工具即可;

第二,可直接绑定数据源控件,而不必写代码读出来再赋值给控件;

第三,可方便的更换数据库平台,如换为 Oracle 数据库,只需要修改 providerName。

(3) 写在 appSettings 中用 System.Configuration.ConfigurationManager.AppSettings["keyname"] 获取数据库连接代码值;写在 connectionStrings 中用 System.Configuration.ConfigurationManager.ConnectionStrings["name"] 获取数据库连接代码值。

通过ADO.Net连接程序和SQLServer数据库的连接字符串:

connectionString ="server=(local);database=Demo;integrated security=true"

直接将连接字符串放在程序中的缺点:多次重复,违反了DRY(Don‘t Repeat Yourself)原则;如要修改连接字符串就要修改代码。

最好的办法是将连接字符串写在App.config中,

(1)具体步骤如下:

添加APP.config文件:添加→新建项→常规→应用程序配置文件。App.config是.Net的通用配置文件,在ASP.Net中也同样使用。

在App.config中添加connectionStrings段,添加一个add项。用name属性起一个名字(比如 ConnStr ),connectionString属性指定连接字符串。

如下:

注意:一个程序可以添加多个连接字符串

那么如何在程序中读取配置文件中添加的这个连接字符串呢?

(2)使用ConfigurationManager类读取配置文件中的连接字符串

必须要先在引用中添加System.Configuration程序集的引用。

添加引用后可以使用System.Configuration空间下的ConfigurationManager类了。(一般写在SqlHelp类中)

string connectString=ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString; //读取配置文件中的连接字符串

using(SqlConnection conn = new SqlConnection(connectString))

{

conn.Open();

}

通过上面的总结,我们不难得到:

把连接字符串写到配置文件里的优点:避免了连接字符串放在程序中的缺点,每次连接数据库时都要重复粘贴一长串的连接字符串。如果哪天我们数据库服务器的IP改动了,我们只需要修改程序配置文件(***.exe.config)中的数据库的IP就好了,修改起来非常的方便。

声明:关于《为什么以config形式配置数据库连接》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2299622.html