NET与数据库技术在动态网站开发中的研究与应用

摘 要:随着计算机技术及互联网技术在近几年的普及,越来越多的方便了人们的生活,上网聊天的飞速发展,已成为很多人的生活的一部分,成为人们互相沟通的工具;大多数聊天室系统是通过使用ASP来开发,由于固有的在ASP中的不足,导致程序员维护困难,导致网络安全,网络传输,降低后台管理方面性能,采用ASP.net技术能更好地解决这些问题。用它来开发互动网页,不仅保留了原有的ASP的优势,而且与用JAVA开发大型网站的后台管理一样的便利;因此,本文对ASP.NET和SQL Server数据库技术在动态网站开发中的应用介绍对今后的类似应用有着指导性作用。

关键词:互联网;聊天室;数据库

中图分类号:TP311.13 文献标识码:A 文章编号:1674-7712 (2013) 22-0000-01

一、引言

Web(World Wide Web)是Internet的一个重要组成部分,促成这些计算机和它们的内容可以方便的互相访问。Web是一个客户机/服务器体系结构。最常见的聊天室就是使用ASP.net技术[1]来实现动态数据库页面的Web服务。可以较好地解决使用ASP.net带来的网络安全,网络传输的问题。

本文介绍的是一种基于Web的在线聊天系统的设计与实现,在SQL Server 2005[2]和ASP.NET的技术支撑下,完成了用户登录,修改用户信息,用户注册,聊天,信息查询五个功能聊天。在后台管理中,利用ADO.net实现后台数据库管理系统设计,能更加方便和有效的管理整个聊天室。

二、ASP.NET应用程序的结构设计[3]

应用程序结构设计是进行ASP.NET应用程序设计的第一步,一个合理的应用程序结构,在软件的稳定性、安全性以及今后系统的维护操作,有非常大的帮助。

应用程序的模式是一个很复杂而又很重要的概念,一个良好的应用程序模式,可以极大地方便软件的开发与维护,并对系统性能提供充分保证,这里主要阐述应用程序三层结构模式。

在这种模式中,将应用程序体系结构划分为表示、业务和数据三层。

(一)表示层

显示用户界面。这一般包括ASP.NET页面和Windows窗体。大多数业务应用程序均使用窗体的形式来构建表示层。每个窗体包含很多字段,用于收集用户输入的字段及显示低层输出。基于用户界面实现的两类组件为:用户界面加工组装和用户界面组件。

(二)业务层

业务层完成应用服务功能。该层通常被用于.NET的编程语言实现的组件的一个或多个支撑。大型企业应用程序一般围绕构建业务流程和业务组件的。这些概念通过含有大量实体、组件和界面的业务层来处理,主要包括:业务实体,工作流,业务组件,服务接口。

(三)数据层

数据层实现了访问外部系统。本层使用的主要是ADO.NET技术。大多数应用程序需要访问存储在数据库中的数据。这在数据层中的数据访问组件负责存储在这些数据库中的数据是开放的业务层。此层用于以下两部分组成:服务网关及数据访问组件。

三、数据库中SQL语句[4]

(一)查询:SELECT * FROM table_Name WHERE column1=a AND column2>b

注释:这是条件查询语句,WHERE后是条件表达式,“*”表示查询所有的字段。

SELECT column1,column2,…column FROM table_Name

注释:查询与table_name字段相同的信息。

SELECT column1,column2 FROM table_Name ORDER BY column2 [DESC]

注释:ORDER BY是指排序按照这个字段,[DESC]是指排列从大到小,否则,排序是从小到大。

(二)添加:INSERT INTO table_Name(columna,columnb,…)SELECT columnx,columny,…FROM another_table

注释:通过一个嵌套查询将其他表格相应字段结果插到此表格。

INSERT INTO table_name(column1,column2,…)VALUES (value1,value2,…)

注释:插入语句中如果明示要插入得到字段,则按表中的字段顺序插入。此外,数据的类型应该相匹配。

(三)更新:UPDATE table_Name SET column1=’a’WHERE conditions

注释:此语句意思为某种条件下把column1字段的值修改为a·。如果不加条件,默认把字段全更改。

(四)删除:DELETE FROM table_Name WHERE conditions

注释:把符合条件的记录全删除。

四、聊天室规划与实现

(一)聊天室规划

1.每个用户进入聊天室之前,可以无需注册,进行用户登录。

2.用户可以进入[用户信息登录界面]输入自己登录名和密码。

3.聊天室内聊天可以看到:所有在线用户人总数及信息。点用户名可以查看其该用户详细信息。可以与一个用户私聊,也可以和用户群聊。

4.采用FIREWORKS、CSS之类工具能设计出美观、友好的用户界面。

(二)聊天室流程图

图1 聊天室流程图

(三)查询在数据库中的实现

要实现数据库中的查询,首先数据库拥有存放相关信息的表,该设计中生成的表含有二个字段,分别是user和pw,将user定为主键。通过登录页面将用户信息加入到表中,此处查询是基于名为“information”的信息表。一旦涉及相关表进行查询,就会用到ADO.NET技术[5]。使用ADO.NET技术必须要引入一个名字空间,这里我们将代码写在Web程序中,程序代码如下:

Imports System.Data.SqlClient;Imports System.Data

要实现数据库的查询,首先建立和数据库的连接,使用SqlConnection对象连接数据库,程序代码如下:

myconnection = New SqlConnection()

myconnection.ConnectionString=("server=localhost;userid=sa;password=;database=

chatroom")

myconnection.Open()

完成与数据库连接后,接下来就是对数据库进行查询,利用Command对象完成查询,代码如下:

Dim mycommand As SqlCommand

mycommand = New SqlCommand("select user,pwfrom information where user="" & username.Text &""", myconnection)

这段代码定义一个Command对象,在数据库中依据输入的用户名使用SQL查询语句查询用户的user和pw。

查询user和pw后如何知道是否得到了用户信息,此时用到DataReader对象。DataReader对象把数据库中对应表的记录遍历一次,如果找到此用户记录就返回True,否则返回False。

(四)传值实现

登录界面中有两处需要传值的地方。第一向聊天页面传值,这里传的值包含用户名,用户图片和字体颜色。实现代码如下:

Response.Redirect("chat.aspx?username="&username.Text&"&usercolor="&UserColor.Value&"&userfigure="&userfigure.Items(userfigure.SelectedIndex).Value)

此处使用了Response对象,Response.Redirect定向到updata.aspx页面并将用户名和字体颜色传到该页面。

第二个传值是向修改用户信息页面传送用户名和密码。修改页面中回显用户信息就是使用这两个值。

五、结束语

随着计算机科学的发展,网络的不断进步,信息已成为时代的主题,为满足广大网络用户能在线交流信息,构建类似网络用户聊天室已经成为必然;此聊天室设计中用到ASP.NET的重要成员ADO.NET作为后台数据库管理系统进行开发,不仅对管理整个聊天室方便有效,而且也为线上用户提供了便捷的交流沟通工具。

参考文献:

[1]陈惠贞,陈俊荣.ASP.NET程序设计[M].北京:中国铁道出版社,2003:68-96.

[2]陈娴,刘开文,王蓉玲.ASP.NET项目开发实践[M].北京:中国铁道出版社,2003:81-122.

[3]李晓东,王淑艳.基于ASP.NET审计网站的开发浅谈[J].吉林农业科技学院学报,2013(06).

[4]朱正国.基于ASP.NET与SQL Server的通用多类型数据处理[J].计算机时代,2013(03).

[5]闫旭.浅谈SQL Server数据库的特点和基本功能[J].价值工程,2012(08).

[作者简介]吴兆立(1979-),男,山东菏泽市单县人,硕士研究生,主要研究领域:网络安全,计算机应用技术。

[基金项目]教育教学研究课题《基于智慧校园的教学模式改革的研究与实践》项目。

推荐访问:网站开发 数据库技术 动态 研究 NET