.net网站内容管理系统(ASP和脚本语言将动态网页和数据库结合,通过应用程序来处理)
优采云 发布时间: 2021-11-21 12:01.net网站内容管理系统(ASP和脚本语言将动态网页和数据库结合,通过应用程序来处理)
【摘要】利用技术开发的网站新闻管理系统,实现了对网站新闻的动态管理,使信息管理更加及时高效,提高了工作效率。同时介绍了系统的开发原理、系统的功能特点和设计方案。
【关键词】 新闻管理数据库
随着互联网的普及,越来越多的公司建立了自己的WWW网站。通过网站,企业可以展示产品,发布最新动态,与用户沟通交流,与合作伙伴建立联系。,并发展电子商务。新闻管理系统是企业网站的重要组成部分。它扮演着两层角色。一方面可以用来动态发布新产品或新开发项目,另一方面可以及时向客户发布公司信息。经营业绩、技术和研发进展,特别推荐或优惠的工程项目、产品和服务,吸引客户,扩大客户群。
有两种传统的 网站 新闻管理方法。一种是静态 HTML 页面。更新信息时,需要重新制作页面并上传页面并修改相应链接。这种方法效率不高,因为效率太低。第二种是基于ASP和脚本语言,结合动态网页和数据库,通过应用程序处理新闻,这是目前比较流行的方式。但是由于ASP本身的局限性,系统存在一些无法克服的缺陷,通过技术使系统的性能有了很大的提升,主要表现在以下几个方面:
1.由于ASP页面每次打开都要经过先编译再解释的过程,所以反复打开页面的速度并没有提高,而且页面只需要编译一次,不需要重新编译,直到修改页面或重新启动 Web 应用程序。这大大提高了多次访问时的速度。
2.由于ASP没有提供任何将数据作为内容输出的组件,所以在使用ASP编写数据库页面时,只能使用ADO的RecordSet对象一一读取记录,通过提供的DataGrid可以直接联系数据库和其他数据库组件。
3.支持应用的实时更新。管理员可以在不关闭 Web 服务器甚至停止应用程序运行的情况下更新应用程序文件。应用程序文件永远不会被锁定,因此即使在程序运行时也可以覆盖该文件。当文件更新时,系统会轻轻切换到新版本。
4、采用“code-behind”方式编写代码,使代码更易于编写,结构更清晰,降低了系统开发和维护的复杂度和成本。
1 系统开发原理
1.1 基于技术的系统结构模型
结构为三层体系:UI层、业务逻辑层和数据层,如图1所示。
图1 系统结构模型
UI 层负责与用户交互,接收用户输入并将数据从服务器呈现给客户端。
业务逻辑层负责接收浏览器的请求并将请求传递给数据层,同时将请求处理结果发送给浏览器。它由 Web 表单、XML Web 服务和组件服务组成。其中,Web表单是应用程序的核心。它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的Web表单交互产生的信息和数据的基础。
数据层通过操作数据为事务逻辑层提供数据服务,例如存储数据操作结果和返回数据检索结果。
1.2 访问数据库的原理
连接数据库,提供了以下三种方法:通过ODBC连接;通过OLEDB连接;直接连接到 SQL Server。由于应用层次的不同,三种方式使效率由低到高,独立由高到低。对于连接数据库的数据处理,也有两种方式,一种是通过DataSet隔离异构数据源,另一种是以流方式(DataReader mode)从数据源中读取。
传统应用程序的设计方式是首先建立与数据库的连接,并在程序的整个运行过程中保持连接。采用断开方式的数据结构。当浏览器向Web服务器请求网页时,服务器处理该请求并将请求的网页发送给浏览器,然后断开连接,直到浏览器发送下一个请求。
另一个创新是引入了数据集(Dataset)。数据集是一个高速缓冲区,在内存中提供数据关系图。数据集对数据源一无所知,它们可以由程序生成和填充,也可以通过从数据仓库中导入数据来生成和填充。无论从何处获取数据,都使用相同的程序模板来操作数据集,并且使用相同的潜在数据缓冲区。
2 系统功能设计
2.1 系统功能结构
新闻管理系统可运行在Windows 2000 Server操作系统平台上,Web服务器为IIS,数据库服务器为Microsoft SQL Server 2000,开发工具为Microsoft Visual Studio .NET和DreamWeaver。图2显示了系统的功能结构。工作流程如下:用户登录按权限判断,普通用户只能浏览、阅读和查询新闻,注册用户不仅可以完成普通用户操作,还可以进入新闻管理模块进行新闻录入、修改和删除操作. 除系统管理员外,注册用户只能删除和修改自己输入的新闻。
2.2 系统特点
(1)操作简单,人性化界面:全控页面布局,新闻录入更方便;新闻分类、来源部门等多项选择,一键即可完成;在此外,跟踪出现的提示信息还可以让用户随时了解自己的运行情况。
(2)即时可见:新闻的处理(包括录入、修改、删除)会立即显示在首页相应栏目中,实现“即时发布,即时生效”的功能。
图2 系统功能*敏*感*词*
(3)功能齐全:包括常见网站新闻管理的各个方面:新闻录入、浏览、删除、修改、检索等,充分实现了网站实时新闻管理要求。
(4) 移植方便:针对不同的公司,只需稍作修改即可开发出适合公司特点的网站新闻管理系统!
3 系统详细设计
系统的主要功能由几个功能模块实现。具体设计流程如下:
⑴系统登录:该模块负责将用户分为普通用户和注册用户,实现用户权限的管理。
⑵ 新闻浏览:该模块负责分页列出网站的所有新闻信息,包括标题、类型、来源部门字段和发布日期。每条新闻的标题都制成了一个超链接,您可以点击它们跳转页面进行新闻阅读。
⑶ 新闻阅读:点击其他页面的标题链接,进入新闻阅读页面。这时候会取出每条新闻的详细信息,包括内容、标题、关键词等,以相对固定的格式放置在不同的页面上。在该区域内,所有新闻使用的页面布局大致相同,但每个字段对应的内容不同。另外,页面的其他部分可以动态放置其他组件,例如网站 logo、页面广告banner等链接图片,这样你就可以轻松实现图文并举的阅读效果。
⑷ 新闻查询:该模块提供新闻查询功能,输入要搜索的内容和选择的分类信息,快速找到符合条件的新闻,并输出查询结果
.
⑸ 新闻管理:该模块负责将已登录但未被删除的注册用户发布的新闻信息进行列表和列表,用户可以对新闻进行删除或修改。除系统管理员外,非新闻发布者无权处理新闻,因此不同的用户在进入该页面时会显示不同的内容。
⑹ 新闻录入与修改:注册用户需要输入一条新闻,包括标题、关键词、类型、来源部门、发布日期等,同时从登录模块获取用户名,该信息将写入数据库进行存储。该模块还负责编辑状态下的更新。此时,它会根据获取到的 Title 字段值初始化页面控件。
下面以系统登录页面的编写为例,给出主要事件和功能来说明系统的开发过程。
//IsRegUserOk函数:判断用户是否已经注册,密码是否正确
public bool IsRegUserOk()
{
字符串名称=TextBoxName.Text.Trim();
string pwd=TextBoxPassword.Text.Trim();
//建立/打开数据库连接
SqlConnection conn=new SqlConnection();
conn.ConnectionString="server=(local);uid=sa;pwd=;database=jxdb";
conn.Open();
//创建sql字符串
string sql="select * from reg where";
SqlDataReader 博士;
SqlCommand cmd=new SqlCommand(sql,conn);
dr=cmd.ExecuteReader();
//保留用户注册信息
bool isRegUserExist=dr.Read();
//关闭数据读取器
博士关闭();
//获取用户名的密码
string sqlBoth="select * from reg where";
sqlBoth+="and pwd='"+pwd+"'";
SqlCommand cmdBoth=new SqlCommand(sqlBoth,conn);
SqlDataReader drBoth;
drBoth=cmdBoth.ExecuteReader();
//同时保留用户名+密码信息
bool isBothExist=drBoth.Read();
//关闭数据读取器
drBoth.Close();
conn.Close();
//判断用户是否注册
如果(!isRegUserExist)
{
Response.Write("alert('该用户尚未注册!')");
返回假;
}
//判断用户名和密码是否一致
否则如果(!isBothExist)
{
Response.Write("alert('用户名密码不一致,无法输入!')");
返回假;
}
别的
返回真;
}
最后给出了系统的后端数据存储方案:
使用 Microsoft SQL Server 2000 建立数据库及其存储过程。这里有两个必备的数据表,一个是数据表News收录字段:编号、名称、标题、关键字、内容、类型、来源部门和日期。字段说明如下:
第二个是数据表Reg收录字段:序列号、姓名、密码、部门、电子邮件地址和电话号码。字段说明如下:
参考
[1] 天际网新技术研究室。“完整介绍”。重庆出版社,2001
[2] 斯科特·沃利。“技术内幕。” 王文龙、刘香凝,译。人民邮电出版社,2002
[3] Sanjeev Rohilla、Senthil Nathan、Surbhi Malhotra。《专业项目实例开发》。陈军王宝良译.中国水电出版社,2003
[4] 丁盛春、王月芬.网站 新闻发布管理系统的设计与应用。现代图书馆与信息技术。2002, 5
[5]