ASP中用Session方式保存数据库连接
ASP中保存数据库连接有很多种,不过,对于一个client客户来说,如果将数据库连接保存在同一个会话中将大大减少建立数据库连接的次数,只使用一个连接就能完成所有工作,又减少连接池创建,分配,回收数据连接的消耗,同时当用户关闭浏览器时,会话自动消除,又可以实现用户退出是自动释放数据连接。
不过用会话保存也有缺点,过多的用户会建立不同的Session,当用户请求过多时,一方面会增加了服务端保存Session的消耗,另一方面,因为会话ID的有限性,必然会导致冲突,这个在java 中就是使用了EJB来解决的,Session Bean是一种很好的方式。
下面是ASP中使用Session保存数据连接的代码
function BuildConn dim ConnStr dim path dim conn path = RootPath & "DBName" '设置数据库路径 ConnStr="Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(path) On Error Resume Next Set conn= Server.CreateObject("ADODB.Connection") conn.open ConnStr If Err Then Err.Clear set conn=nothing end if set BuildConn = conn end function sub GetConn '利用Session控制数据库链接 '注意,这里只适用于小于一定数量连结的应用,连结用户增加,Session同样增加 set temp = BuildConn if(session("DBConn") = "") then session("DBConn") = temp end if conn = session("DBConn") '设置conn end sub sub CloseConn conn = session("DBConn") '设置conn if conn <> "" then conn.close end if end sub |
Recent Comments