3.2数据库访问性能优化的实现
系统访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源。ASP.NET中提供了连接池(ConnectionPool)改善打开和关闭数据库对性能的影响[5]。系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求。本系统连接池的实现在Web.config文件中进行配置。
系统访问数据库资源的主要操作涉及到执行SQL语句,创建DataSet对象、DataView对象或DataReader对象等,这些操作需要经常执行,因此,我们将这些需要反复执行的代码封装在DBAccess.cs基础类中,以便在需要时调用此代码,以实现代码的重复使用,提高编程效率。DBAccess.cs的主要代码如下:
publicclassDBAccess
{publicSqlConnectionconnstr;//连接字符串
publicstringgetconnstr()//获取连接字符串
{stringconstr;
constr=ConfigurationManager.ConnectionStrings['strConn'].ConnectionString;
returnconstr;
}
publicvoidopen()//打开数据库
{stringconstr;
constr=getconnstr();
connstr=newSqlConnection(constr);
connstr.Open();
}
publicvoidclose()//关闭数据库
{connstr.Dispose();
connstr.Close();
}
publicvoidexecsql(stringsql)//执行sql语句
{open();
SqlCommandcmd=newSqlCommand(sql,connstr);
cmd.ExecuteNonQuery();
close();
}
publicDataSetdataset(stringsql)//返回DataSet对象
{open();
SqlDataAdapterrs=newSqlDataAdapter(sql,connstr);
DataSetds=newDataSet();
rs.Fill(ds);
returnds;
}
publicDataViewdataview(stringsql)//返回DataView对象
{DataSetds=newDataSet();
ds=dataset(sql);
DataViewdv=newDataView(ds.Tables[0]);
returndv;
}
publicSqlDataReaderdatareader(stringsql)//返回DataReader对象
{open();
SqlCommandcmd=newSqlCommand(sql,connstr);
SqlDataReaderdr=cmd.ExecuteReader();
returndr;
}
}
4.结束语
本文在参考三层B/S体系结构的基础上,以.NET为开发工具,实现了一个基于WEB的轻轨票务管理系统。通过将常用逻辑操作如数据库连接与访问等封装在基础类中,来达到代码重用、避免重复开发的目的。通过配置Web.config文件,提高系统的安全性和优化数据库的访问性能。系统实现了售票、退票、验票、站台等票务管理功能以及对票务的查询、统计和分析功能,可以有效地提高轻轨运营管理中票务管理的效率。在此感谢项目组其他老师以及学生的参与和支持。
参考文献
1 陈宇. 城市轨道交通运营企业的票务组织管理[J].北京:都市快轨交通.2009.12.
2 电子票务系统,全亨科技.来自网络.
3 江澍,左春荣. 基于.NET 信息采集系统的设计和实现[J]. 北京:微计算机信息.2008.5.
4 郑伟.ASP.NET程序设计与软件项目实训[M].北京:清华大学出版社.2010.1.
5 翁健红.基于C#的ASP.NET程序设计第2版[M].北京:机械工业出版社.2010.1. 2/2 首页 上一页 1 2 |