资源描述
成绩
课程设计报告
题 目 校园新闻发布管理系统
课 程 名 称 工程项目实践
院 部 名 称 龙蟠学院
专 业 计算机科学与技术
班 级 M11计算机科学与技术 II
学 生 姓 名 于脐松
学 号 1121117041
课程设计地点校 内
课程设计学时 8 周
指 导 教 师 钟 睿
金陵科技学院教务处制
【注:根据课程设计大纲第四项具体要求撰写课程设计报告】
目录
1需求分析2
1。1 需求分析2
1。2 新闻系统的性能需求2
1。3 运行环境要求3
2系统结构设计3
2.1系统的功能模块简介3
2。2系统的模型结构4
2。3 系统数据流图5
3 系统数据库设计7
3。1 实体图7
3。2 数据表的创建8
4 系统功能模块的设计10
4。1各主要窗体页的图形界面介绍10
4。1。1前台10
4。1。2 后台13
4。2 Web。config文件配置22
4.3 系统部分重要功能及其代码22
4.3。1 Web用户控件23
4。3.2 添加发布新闻23
4。3。3 用户注册23
4。3.3 用户修改密码24
参考文献27
致谢28
1需求分析
1.1 需求分析
本系统把经常变动的信息,类似公司动态、企业新闻、新产品发布、促销活动和行业动态等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上,同时提供新闻搜索及相关网站的友情链接。
本系统主要分为前台和后台,前台主要包括各类信息的搜索及查看,后台包括管理员及相关信息的系统管理。
◆ 前台按分类显示新闻;
◆ 搜索新闻;
◆ 后台管理:
● 添加、删除和修改(编辑)新闻
● 添加、删除和修改用户
来访者有不同的权限,需要有个管理权限的功能,系统中应该有个超级管理员,具有所有权限,能够对系统进行全面管理,同时管理员可以修改自己的信息。
根据校园网站新闻发布管理的实际需求,在首页中能显示最近发布的几条新闻等,同时在后台发布新闻时可以添加图片,在前台能自动根据所显示的图片显示新闻。
在后台管理中,因为有权限的管理员才能登录管理后台,所以需要有个登录验证模块,而且需要根据用户权限的不同显示不同的管理目录,在管理新闻和用户时,当数据少时管理起来还比较方便,如果一多则想找到某条新闻或某个用户就很难,所以需要有个查找(按发布日期)模块用于查找新闻.
根据以上需求分析,该系统要实现的主要功能为:
◆ 前台显示新闻部分
● 用户登录区
● 显示最新的前几条新闻
● 搜索新闻功能
● 新闻详细信息浏览阅读
● 图片新闻(自动生成缩略图)在首页显示且只显示前三条
● 网站友情链接(可在管理中添加设置)
◆ 后台管理部分
● 登录验证
● 根据权限显示相应的管理目录
● 添加、修改和删除新闻
● 用户管理
1。2 新闻系统的性能需求
该系统在性能功能上应达到如下需求:
◆操作简单、界面友好: 完全控件式的页面布局,使得新闻的录入工作更简便,许多选项只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况.对常见网站的新闻管理的各个方面:新闻录入、浏览、删除、修改、搜索等方面都大体实现,实现了网站对即时新闻的管理要求;◆即时可见:对新闻的处理(包括录入、修改、删除)将立即在主页的对应栏目显示出来,达到“即时发布、即时见效”的功能;
◆ 系统运行应该快速、稳定、高效和可靠;
◆ 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。
1。3 运行环境要求
1。3.1 运行平台
客户机硬件要求:具有 Pentium III 处理器以上且满足以下要求的计算机:最低 64 MB 内存,最小 2。1 GB 硬盘.
服务器硬件要求:具有 Pentium III 处理器以上且满足以下要求的计算机:最低 256MB 内存,最小 8 GB 硬盘。
1。3。2 支持程序
◆客户端
操作系统:Windows 98/NT/2000/XP或更高版本
浏览器:IE 5。0以上
◆服务器
操作系统:Windows 200X Server或者Windows XP
Web服务器:Tomcat6.0
数据库:SQL Server2000
2系统结构设计
2。1系统的功能模块简介
该系统的系统的功能模块图如图所示:
登录后经权限判断
浏览网站
普通浏览者
浏览阅读新闻
搜索新闻
注册用户
添加新闻
管理新闻
管理用户
管理员
添加新闻
搜索新闻
浏览阅读新闻
新闻输入员
搜索新闻
浏览阅读新闻
系统功能模块图示
整个系统的工作流程为:
打开该系统网站,普通浏览者能浏览、阅读和搜索新闻,能进行注册,注册后成为新闻输入员,登录进入新闻后台管理区, 有添加新闻的权限;如为系统管理员,其有新闻后台管理区内的所有权限,如:添加和管理新闻、添加和管理用户和友情链接设置.在添加新闻时,可以添加新闻标题、新闻内容、而新闻作者和发布时间是由系统自动获取不需要输入。
管理新闻功能包括对任一条新闻内容可作相应修改,也可删除任何一条不再需要保留的新闻。管理用户包括修改用户名、密码和用户权限,也可将任一用户删除。
2.2系统的模型结构
该系统结构分为三个逻辑层,具体模型结构如图所示。
Web 层:Web层为客户端浏览器提供对应用程序的访问,这一层是作为解决方案文件中的 Web 项目实现的.Web 层由 JSP 窗体和代码隐藏文件组成。Web 窗体只是用 HTML 提供用户操作,而代码隐藏文件实现各种控件的事件处理程序。
业务层:包含各种业务规则和逻辑的实现,如客户帐户的验证和字符串处理。
客户端
浏览器
客户端
浏览器
客户端
浏览器
Web
层
业务层
数据访问层
系统配置
数据库
新闻系统的模型结构图示
数据访问层:数据访问层为业务层提供数据服务,这一层是作为解决方案文件中的 Conn类(数据访问类,实现公共操作的一个通用类)实现的;
2.3 系统数据流图
通过对数据流向进行分析,得出该系统的整个数据流图如图所示。
1
用户注册
新闻输入员
网站访客
申请注册
注册成功
4
发布新闻
用户信息
3
新闻管理
新闻信息
2
用户管理
删除
修改
删除 添加
网站管理员
修改
系统数据流图
3 系统数据库设计
本项目使用SQL Server2000作为数据库,其中数据库名为news。包含3个实体。
3.1实体图
1. 用户E—R实体图
用户名
编号
用户的实体具有用户ID、密码、用户名、用户权限级别4个属性,E—R图如图所示。
用户
权限级别
密码
用户E—R实体图
2. 新闻E-R实体图
新闻标题
新闻的实体具有编号、标题、内容、作者、发布时间5个属性,E—R图如图所示.
新闻编号
新闻内容
新闻
发布时间
作者
新闻实体图
3. 图片E—R实体图
图片的实体具有编号、名称、大小、类型等6个属性,E-R图如图3.3所示.
图片编号
图片名称
图片大小
上传时间
图片类型
上传者
评论E—R图
3.2 数据表的创建
该数据库中共涉及到3个数据表的应用,分别为如下:
l UserInfo:保存注册用户的信息
l NewsInfo:用于存储新闻信息
l Image:用于存储上传的图片的信息.
①。 用户信息表
用户信息表(UserInfo)用于存放该管理系统中所有用户的信息,用户管理是每个管理系统中必不可少的,也是比较重要的一部分,本系统中进行了较详细的设计,表中各个字段的数据类型、大小以及简短描述如下表所示。
用户信息表
字段名
数据类型
大小
字段描述
userID
int
4
用户ID,作为主键
username
Varchar
15
用户名
Password
Varchar
12
记录用户登陆时的密码
Usertype
Varchar
2
用户的权限级别
②。新闻信息表
新闻信息表(NewsInfo) 表用于存储新闻信息。由于本系统主要是用于管理校园新闻,因此在本系统中进行了较详细的设计,表中各个字段的数据类型、大小以及简短描述如下表所示。
新闻信息表
字段名
数据类型
大小
字段描述
NewsID
int
4
新闻编号,唯一标识
title
varChar
50
新闻标题
content
varChar
1000
新闻内容
Publisher
varChar
100
新闻的发布者
Datetime
datetime
8
新闻的发布时间
③。图片信息表
图片信息表(Image),用于存储上传的图片的信息。由于新闻信息中很多都包含有图片,因此对图片的管理也是本系统不可缺少的一部分,该表中各字段的具体描述如下表所示.
图片信息表
字段名
数据类型
大小
字段描述
ImageID
int
4
图片编号(主键),自动递增
ImageName
varchar
50
图片的名称
ImageInfo
Float
8
描述图片的大小
ImageType
varchar
10
图片的类型
ImagePublisher
varchar
50
图片上传者
ImageDatetime
datetime
8
图片上传时间时间
4 系统功能模块的设计
4。1各主要窗体页的图形界面介绍
4.1.1前台
明日新闻网络中心的前台主界面如图1.1所示。
图1。1 明日新闻网络中心(前台)
通过新闻网的前台可以搜索及查看各类新闻信息、年度新闻人物的查看及评选、大型网站的友情链接.
单击界面上方的【返回首页】按钮,即可随时返回新闻网的首页面。
4。1。1.1 信息浏览
单击主页面导航条中的各个新闻链接,界面下方即可显示相关的新闻信息.如单击“军事"链接,界面下方自动显示军事新闻信息。如图1.2所示。
图1。2 军事新闻
在“军事新闻"的信息界面中,单击相关信息的“查看新闻的详细内容”链接,系统自动显示相应新闻的详细内容.
4。1。1。2 新闻搜索
单击前台首页“新闻关键字”的文本框,输入相关的搜索内容,单击“请选择新闻类型"的下拉按钮,选择新闻类型,最后单击【确认查询】按钮,界面右侧自动显示相关的查询结果。单击“查看新闻的详细内容"链接,可查看详细的新闻信息。效果图如图1。3所示。
图1。3 搜索新闻
4。1。1.3 新闻人物的查看及评选
1。 年度新闻人物的查看及投票
单击【年度新闻人物】按钮,界面右侧自动显示全部新闻人物的相关信息。
图1。4 查看新闻人物
单击相应人物后面的【投票】按钮,系统自动提示“投票成功”的提示信息即投票成功。
注意:只能进行一次投票,否则系统会给予提示。
2。 查看年度新闻人物投票数量
单击【年度新闻人物投票数量】按钮,界面右侧自动显示全部新闻人物的投票数量。
4.1。1。4 友情链接
单击“友情链接”中的网站名称,即可直接进入相关网站。
4。1.2 后台
单击新闻网界面右侧的【进入后台】按钮,系统弹出的提示信息进行确认后进入管理员登录的界面.如图1.5所示。
图1.5 管理员登录界面
单击“账号”和“密码"的文本框,输入账号:mr 密码:mrsoft,单击【提交】按钮即可进入如图1。6所示的新闻网后台界面。
图1。6 新闻网后台
后台主要分为:总管理员设置、更改总管理员密码、普通管理员设置、添加新的管理员、新闻类型管理、新闻详细类型管理、新闻信息管理、链接管理和查看新闻人物九大系统设置,通过这九个系统设置可以对管理员以及信息等内容进行常规操作,保证系统正常运行。
在新闻发布系统中,后台管理员分为两种:一个是普通管理员,他可以对新闻类型进行定义,也可以发布新闻、设置投票人数及网站链接;另一个是总管理员,他除了可操作以上功能外,还可以对普通管理员进行设置,总管理员和普通管理员都能通过后台登录页面登录后台.
4。1。2。1 总管理员设置
单击【总管理员设置】按钮,界面右侧自动显示相关的界面,如图1。7所示。
图1。7 总管理员设置
单击“请输入账户"和“请输入密码"的文本框,输入账户及密码,最后单击【提交】按钮,界面右侧自动显示管理员的全部信息。如下图1。8所示.
图1.8 查看全部信息
单击相应管理员后面的【修改】按钮,在系统弹出的更改管理员性质的界面中即可进行修改,最后单击【修改】按钮即完成修改操作。
单击相应管理员后面的【删除】按钮,系统弹出的提示框进行确认后即删除该管理员信息。
4。1。2.2 更改总管理员密码
单击【更改总管理员密码】按钮,界面右侧自动显示相关的界面,如图1.9所示.
图1.9 更改总管理员密码
单击“请输入原来的密码"文本框,输入密码,单击【提交】按钮,系统弹出如图1。10所示的界面,单击“请输入新密码"及“请再次输入新密码”文本框,两次输入相同的新密码,最后单击【提交】按钮,系统弹出修改成功的提示信息即完成修改操作。
图1.10 总管理员新密码
4。1。2.3 普通管理员设置
单击【普通管理员设置】按钮,界面右侧自动显示相关的界面,如图1。11所示.
图1。11 普通管理员设置—查看管理员信息
单击相应管理员后面的【修改密码】按钮即可进行密码的修改。具体的操作方法同“更改总管理员密码”的操作方法相同。这里不作重复讲解。
4。1。2。4 添加新的管理员
单击【添加新的管理员】按钮,界面右侧自动显示相关的界面,如图1.12所示。
图1。12 管理员注册
单击“请输入账号"文本框,输入相应的账号,单击【提交】按钮,系统自动显示如图1。13所示的界面,单击“密码"及“真实姓名”文本框,输入密码及姓名,最后单击【提交】按钮,系统弹出注册成功的提示信息即管理员添加成功。
图1。13 管理员注册—填写管理员信息
4.1。2。5 新闻类型管理
单击【新闻类型管理】按钮,界面右侧自动显示相关的界面,如图1.14所示.
图1.14 新闻类型管理—查看全部新闻类别
1。 添加类别名称
单击【添加类别名称】按钮,系统自动弹出如图1。15所示的界面,单击“名称”的文本框,输入相应的名称,最后单击【提交】按钮即添加成功。
图1.15 添加类别名称
2。 修改及删除类别名称
单击相应类别名称后面的【修改】按钮,在系统弹出的界面中单击“名称”文本框即可进行修改,最后单击【提交】按钮即修改成功。
单击相应类别名称后面的【删除】按钮,系统弹出的提示信息进行确认后即删除成功。
4.1。2.6 新闻详细类型管理
单击【新闻详细类型管理】按钮,界面右侧自动显示相关的界面,如图1.16所示。
图1.16 新闻详细类型管理
新闻详细类别的添加、修改及删除和新闻类型管理的操作方法相同,这里不作重复讲解,请参照1.2.5新闻类型管理。
4。1。2。7 新闻信息管理
单击【新闻信息管理】按钮,界面右侧自动显示相关的界面,如图1。17所示。
图1.17 新闻信息管理
1. 添加新闻
单击【添加新闻】按钮,系统弹出如图1.18所示的界面,单击任意一种新闻类型,即可进入如图1.19所示的信息添加界面。
图1。18 新闻类型选择界面
图1.19 添加新闻
单击“新闻标题”和“新闻内容”文本框,输入相应的标题及内容,单击“详细类别”下拉按钮,选择相应的类别,最后单击【提交】按钮即添加成功.
2。 查看、修改及删除新闻
单击相应信息后的【查看新闻具体内容】按钮,可显示新闻的具体内容.
单击相应信息后的【修改】按钮,在弹出的界面中单击各文本框即可进行修改,最后单击【提交】按钮即修改成功.
单击相应信息后的【删除】按钮,系统弹出的提示信息进行确认后即删除成功.
4。1。2。8 链接管理
单击【链接管理】按钮,界面右侧自动显示相关的界面,如图1。20所示。
图1。20 链接管理
1。 添加链接信息
单击【添加链接信息】按钮,系统自动进入如图1.21所示的界面.
图1.21 添加链接
单击“链接网站名称”及“链接的地址”文本框,输入链接的网站名称及地址,最后单击【提交】按钮即添加成功。
2. 修改及删除链接信息
单击相应网站名称后的【修改】按钮,在系统弹出的界面中单击各文本框,进行修改之后单击【提交】按钮即修改成功。
单击相应网站名称后的【删除】按钮,系统弹出的提示信息进行确认后即删除成功.
4。1。2。9 查看新闻人物
单击【查看新闻人物】按钮,界面右侧自动显示相关的界面,如图1。22所示.
图1。22 查看新闻人物
1. 添加新闻信息
单击【添加新闻人物信息】按钮,系统弹出如图1。23所示的界面.
图1。23 添加新闻人物信息
单击人物名称、人物籍贯、人物年龄、人物工作和简单介绍的文本框,输入相应的内容,最后单击【提交】按钮即添加成功.
2。 修改及删除新闻信息
单击相应人物名称后的【修改】按钮,在系统弹出的修改新闻人物信息的各文本框内即可进行修改,最后单击【提交】按钮即修改成功。
单击相应人物名称后的【删除】按钮,系统弹出的提示信息进行确认后即删除成功。
4。1.2.10 退出后台
单击【退出后台】按钮,系统自动返回新闻网的前台主页面。
4.2 Web。config文件配置
ASP.NET应用程序的配置功能放在Web。config文件中,它包含每一个具体Web应用程序的配置信息.在程序运行时,ASP。NET使用分层虚拟目录结构的Web。config文件提供的配置信息为每个惟一的URL资源计算一组配置设置,然后缓存结果配置设置,以供所有页面对资源的请求使用。
Web。config文件对于访问站点的用户来说是不可见的,而且也是不可访问的,它基于XML,每个配置文件都包含XML标记和子标记的嵌套层次结构。
新闻系统的Web。config文件中的配置:
〈appSettings〉〈addkey="connstr"value=”DataSource=localhost;database=News;integrated" /〉〈/appSettings〉 通过键/值对key 和value配置数据库连接的相关信息,将SQL Server数据库News。MDF文件用相对路径的方式设置为字符串”MdbPath"在程序代码中进行连接引用。
4。3 系统部分重要功能及其代码
4。3。1 Web用户控件
该系统中创建了两个Web用户控件top。ascx和foot。ascx,在首页、新闻详细内容查看、新闻管理等页面的HTML代码里都进行了引用,调用方式为:
<%@ Register TagPrefix="uc1” TagName=”bottom" Src=”bottom。ascx" %〉
<%@ Register TagPrefix=”uc1” TagName="top" Src="top.ascx” %>
@ Register指令注册用户控件,同时把属性TagName(标签名)和TagPrefix(标签前缀)添加到@ Register指令中,Src属性表示该用户控件相对于父页面的相对地址。用户控件也是服务器端控件,还必须在用户控件代码中添加Runat=server属性,用法如下:
〈uc1:top id="Top1” runat=”server”〉〈/uc1:top>
<uc1:bottom id="Bottom1” runat=”server”>〈/uc1:bottom〉
其中top。ascx用户控件作用是显示网站横幅和一些常用按钮以及当前日期,foot。ascx用户控件作用是显示底部相关版权信息等。
用户控件是非常易于代码重用的,可以把许多相关功能和用户界面封装在一个用户控件中,然后在任何需要该功能的地方重用此控件。
4。3.2 添加发布新闻
添加发布新闻在该系统中显然起着很关键的作用,在添加新闻管理页面里,通过单击“添加"按钮执行新闻的添加,“添加"按钮的单击事件主要程序如下:
string publisher = Session["username"].ToString(); //获取新闻输入员的用户名
//创建连接对象
string connectionString = ”Data Source=。;Initial Catalog=News;Integrated Security=True”;
//创建Connection连接对象objconn
SqlConnection objconn = new SqlConnection(connectionString);
//定义SQL语句,添加一条记录
string sql = ”insert into NewsInfo(title,content,Publisher,Datetime)values”;
sql += ”(’” + txttitle。Text + ”’,’” + txtcontent。Text + ”’,’" + publisher + ”’,’” + DateTime。Now。ToString(”yyyy-MM-dd”) + "')”;
//创建Command连接对象objcmd
SqlCommand objcmd = new SqlCommand(sql, objconn);
objcmd。Connection。Open();//打开数据库连接
objcmd.ExecuteNonQuery();//执行数据库操作
objcmd。Connection。Close(); //关闭数据库连接
4。3.3 用户注册
该系统的内容是需要靠校园众多用户来丰富充实的,而用户注册功能提供了给用户注册和发布新闻的作用.在首页里只需点击注册按钮即可注册,注册页面里注册按钮的单击事件处理程序如下:
//创建数据库连接&命令的对象
string connectionString = ”Data Source=.;Initial Catalog=News;Integrated Security=True";
SqlConnection objconn = new SqlConnection(connectionString);
SqlCommand objcmd = new SqlCommand("AddUser”, objconn);
objcmd.CommandType = CommandType.StoredProcedure;//指明Sql的操作命令是存储过程
//给存储过程添加参数
SqlParameter paramusername = new SqlParameter(”@username", SqlDbType。VarChar);
paramusername。Value = txtusername.Text。ToString();
objcmd。Parameters.Add(paramusername);
SqlParameter parampassword = new SqlParameter(”@password", SqlDbType。VarChar);
parampassword.Value = Pwd1。Text。ToString();
objcmd.Parameters.Add(parampassword);
objcmd。Connection。Open();//打开数据库连接
objcmd.ExecuteNonQuery();//操作数据库
objconn。Close();//关闭数据库连接
在实现注册功能时用到了存储过程,存储过程AddUser的代码如下:
CREATE PROCEDURE AddUser
(@username varchar(15),@password varchar(12))
AS
IF EXISTS
(SELECT username FROM UserInfo WHERE username=@username)
RETURN 1
INSERT INTO UserInfo(username,password)VALUES(@username,@password)
RETURN 0
GO
另外,在注册页面中用到了RequiredFieldValidator(非空)、RegularExpressionValidator(正则表达式)和CompareValidator(比较)验证控件,分别用于文本输入框的非空验证、由正则表达式来验证用户的输入值是否正确和验证两个输入框的值是否相等.
服务器端验证控件是ASP。NET控件中新产生的一种验证控件,可以在客户端直接验证用户的输入,但控件必须包含“runat=server"属性。正常情况下验证控件是不可见的,当用户输入数据错误时它们才可见.
4。3。3 用户修改密码
为了保证用户帐号的安全,系统需要设置有密码修改的功能。有些人盗用他人的帐号进行一些非法活动,会给帐号拥有者带来很大麻烦,有时候甚至造成很严重的后果。因此,当用户发现自己的帐号密码泄露,有可能被他人指导时就需要及时到修改密码页面自己的登录密码,防止恶果的发生。修改密码按钮的单击事件代码如下:
if (pass != cpass)
{
this。Response。Write("〈script>alert('两次输入的密码不一致!');〈/script〉");
return;
txtusername。Text = "";
}
else{
//连接数据库
string connectionString = ”Data Source=。;Initial Catalog=News;Integrated Security=True”;//创建连接对象
SqlConnection objconn = new SqlConnection(connectionString);
SqlCommand objcmd = new SqlCommand(”Changepassword", objconn); //创建command对象objcmd
objcmd.CommandType = CommandType。StoredProcedure;//使用存储过程
objcmd。Parameters。Add(”@username”, usetxt);
objcmd。Parameters。Add(”@password”, pass);//将pass保存为修改后的密码
objconn。Open();
try
{
int resultrow = objcmd.ExecuteNonQuery(); //返回数据库被影响的行
objconn。Close();
this.Response.Write("〈script>alert('操作已成功!’);</script〉");
}
}
总结
为做出该新闻系统程序,访问了大量Web网络开发方面的网站,搜集了大量关于Web网络开发的中英文资料,也查阅了大量书籍的源代码作为参考和运用,从中学会了许多ASP。NET和ADO。NET技术关于Web开发方面的知识。
该系统虽然能正常运行,但有的功能还不是太完善,甚至有些功能很不符合逻辑.一方面时间紧迫,加上本人是初次使用。net开发软件,在知识、经验方面都存在着不足;另一方面是ASP.NET这门技术的学习和熟练使用需要一个长期的过程.
因此,系统中存在一些缺陷和不足在所难免.因为在需求分析时,没有深入了解网上书店的整个流程,因此未能做到完全满足用户的需求.
通过开发这个系统,我掌握了很多做项目的过程,了解到的基本知识巩固了我对ASP.NET(2。0)及C#的学习,但在这次设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。
参考文献
[1] 天极网新技术研究室。ASP。NET完全入门。人民邮电出版社,2001。6
[2] Sanjeev Rohilla等著,陈君等译.ADO.NET专业项目实例开发.中国水利水电出版社,2003。5
[3] 攀建编著.ASP。NET+ADO。NET项目开发实例。清华大学出版社,2004。1
[4] (美)A.Russell Jones著,高春蓉等译。ASP。NET从入门到精通。电子工业出版,2002。1
[5] Scott Worley著,王文龙 刘湘宁译.ASP.NET技术内幕。人民邮电出版社,2002。4
[6] Scott Allen等著。C#数据库入门.郝启堂 张哲峰译.清华大学出版社,2003。2
[7] (美)微软公司著。NET框架1。1类库参考手册。清华大学出版社,2004。1
致谢
在整个系统设计和论文撰写过程中,得到了指导老师的悉心指导,在此向他致以诚心的谢意。同时,我还要感谢在这几年来对我有所教导的老师,他们孜孜不倦的教诲不但让我学到了很多知识,而且让我掌握了学习的方法,教会了我做人处事的道理,在此表示感谢。同时,在系统设计过程中还有同学也给了我不少帮助,这里一并表示感谢.
14
展开阅读全文