1、ASP.NET网站新闻管理系统设计和实现摘要利用ASP.NET和ADO.NET技术开发网站新闻管理系统,实现了网站新闻动态管理,使得对信息管理愈加立即、高效,提升了工作效率。同时对系统开发原理、系统功效特点和设计方案进行了介绍。关键词ASP.NET ADO.NET 新闻 管理 数据库伴随Internet普及,越来越多企业建立了自己WWW网站,企业经过网站能够展示产品,公布最新动态,和用户进行交流和沟通,和合作伙伴建立联络,和开展电子商务等。其中新闻管理系统是组成企业网站一个关键组成部分,它担负着双层作用,首先能够用来动态公布相关新产品或新开发项目,其次又能够立即向用户公告企业经营业绩、技术和研
2、发进展、尤其推荐或优惠工程项目、产品和服务,从而吸引用户,扩大用户群。传统网站新闻管理方法有两种,一是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改对应链接,这种方法因为效率太低已不多用。二是基于ASP和脚本语言,将动态网页和数据库结合,经过应用程序来处理新闻,这是现在较为流行做法。不过因为ASP本身不足使得系统有部分不可克服缺点,而采取了ASP.NET技术系统性能上有了很大改善,其关键表现在以下几方面:1.因为ASP页面每次打开全部必需经过先编译后解释过程,所以页面在反复打开时速度没有任何提升,而ASP.NET页面只需要一次编译后不需要重新编译,直到该页面被修改或Web应用程
3、序重新开启。这使得在数次访问时速度有了极大提升。2.因为ASP没有提供任何输出数据为内容元件,所以在使用ASP撰写数据库页面时只能借助ADORecordSet对象逐笔读取统计,而ASP.NET经过ADO.NET提供DataGrid等数据库元件能够直接和数据库联络。3.ASP.NET支持应用程序实时更新。管理员无须关掉网络服务器或甚至不用停止应用程序运行就能够更新应用文件。应用程序文件永远不会被加锁,所以甚至在程序运行时文件就能够被覆盖。当文件更新后,系统会温和地转换到新版本。4.ASP.NET采取“code-behind”方法编写代码使得代码更易于编写,结构更清楚,降低了系统开发和维护复杂度和
4、费用。1系统开发原理1.1 基于ASP.NET技术系统结构模型ASP.NET结构是一个三层系统:UI层、业务逻辑层和数据层,图1所表示。图1 ASP.NET系统结构模型UI层负责和用户交互,接收用户输入并将服务器端传来数据展现给用户。业务逻辑层负责接收浏览器传来请求并将请求传给数据层,同时将请求处理结果发给浏览器。它由Web表单、XML Web服务和组件服务组成。其中Web表单是ASP.NET应用程序关键所在,它是向用户展现数据和信息基础,也是响应和处理用户和显示Web表单交互生成信息和数据基础。数据层是经过ADO.NET操纵数据为事务逻辑层提供数据服务,如存放数据操作结果、返回数据检索结果等
5、。1.2 ADO.NET访问数据库原理和数据库相连,ADO.NET提供了以下3种方法:经过ODBC相连;经过OLEDB相连;直接和SQL Server相连。3种方法因为应用层次差异,使得效率由低到高,独立性由高到低。对于相连数据库数据处理,也有2种方法,即一个是经过DataSet来隔离异构数据源,另一个是以流方法从数据源读取(DataReader方法)。传统应用程序是经过先建立到数据库连接,在程序整个运行过程中维护连接方法来设计。ASP.NET采取了断开连接方法数据结构。当浏览器向Web服务器请求网页时,服务器处理这个请求,并将所请求网页发送给浏览器,然后连接就被断开,直到浏览器发出下一个请求
6、。ADO.NET另一个创新是引入了数据集(Dataset)。一个数据集是内存中提供数据关系图高速缓冲区。数据集对数据源一无所知,它们能够由程序或经过从数据仓库中调入数据而被生成、填充。不管数据从何处获取,数据集全部是经过使用一样程序模板而被操作,而且它使用相同潜在数据缓冲区。2 系统功效设计2.1 系统功效结构该新闻管理系统能够在Windows Server操作系统平台上运行,Web服务器为IIS,数据库服务器为Microsoft SQL Server,开发工具采取Microsoft Visual Studio .NET和DreamWeaver.图2给出系统功效结构图。其工作步骤为:用户登录经
7、过权限判定,一般用户只能浏览、阅读和查询新闻,注册用户除了能够完成一般用户操作外,还能够进入新闻管理模块进行新闻录入、修改和删除操作。注册用户除系统管理员外只能对自己录入新闻进行删改操作。2.2 系统功效特点(1)操作简单、界面友好:完全控件式页面布局,使得新闻录入工作更简便;很多选项包含新闻类别、起源部门等只需关键点击鼠标就能够完成;另外,跟踪出现提醒信息也让用户随时清楚自己操作情况。(2)即时可见:对新闻处理(包含录入、修改、删除)将立即在主页对应栏目显示出来,达成“即时公布、即时见效”功效。图2 系统功效结构图(3)功效完善:包含常见网站新闻管理各个方面:新闻录入、浏览、删除、修改、检索
8、等各个方面,完整地实现了网站对即时新闻管理要求。(4)方便移植:针对不一样企业,只需要稍作修改就能够开发出适合本企业特点网站新闻管理系统!3 系统具体设计系统关键功效是经过多个功效模块来实现。具体设计过程以下: 系统登录:该模块负责将用户分为一般用户和注册用户来实现用户权限管理。 新闻浏览:该模块负责分页列出网站全部新闻信息,包含标题、类型、起源部门字段及公布日期,每条新闻标题被做成一个超链接,点击它们就能跳转页面进行新闻阅读。 新闻阅读:在其它页面中点击标题链接即进入新闻阅读页面,此时,每条新闻具体信息将被取出,包含内容、标题、关键字等,并按摄影对固定格式放置在页面不一样区域,全部新闻使用大
9、致相同页面布局,只是各字段对应内容不一样而已,另外,页面其它位置,能够动态放置其它元件,如网站标志logo、页面广告banner等链接图片,这么能够很轻易地实现图文并茂阅读效果。 新闻查询:该模块提供了新闻查询功效,输入待查找内容及选定分类信息能够快速地找到符合条件新闻,并输出查询结果。 新闻管理:该模块负责分页罗列登录注册用户曾公布过且未删除新闻信息,用户能够对该条新闻进行删除、修改。非新闻公布者除系统管理员外不含有对该条新闻处理权限,所以不一样用户进入此页面将显示不一样内容。 新闻录入和修改:注册用户录入一条新闻所需要内容,包含标题、关键字、类型、起源部门、公布日期等,同时从登录模块得到用
10、户名,这些信息将被写入数据库中保留。该模块还负责编辑状态下更新,这时,它将依据取得Title字段值对页面控件初始化。下面以系统登录页面编写为例给出关键事件和函数,说明该系统开发过程。/IsRegUserOk函数:判定用户是否已经注册和密码是否正确public bool IsRegUserOk()string name=TextBoxName.Text.Trim();string pwd=TextBoxPassword.Text.Trim();/建立/打开数据库连接SqlConnection conn=new SqlConnection();conn.ConnectionString=“serv
11、er=(local);uid=sa;pwd=;database=jxdb”;conn.Open();/建立sql字符串string sql=“select * from reg where name=”+name+“”;SqlDataReader dr;SqlCommand cmd=new SqlCommand(sql,conn);dr=cmd.ExecuteReader();/保留用户注册是否信息bool isRegUserExist=dr.Read();/关闭DataReaderdr.Close();/取得用户名密码string sqlBoth=“select * from reg whe
12、re name=”+name+“”;sqlBoth+=“and pwd=”+pwd+“”;SqlCommand cmdBoth=new SqlCommand(sqlBoth,conn);SqlDataReader drBoth;drBoth=cmdBoth.ExecuteReader();/保留用户名+密码同时存在信息bool isBothExist=drBoth.Read();/关闭DataReaderdrBoth.Close();conn.Close();/判定用户是否注册if(!isRegUserExist)Response.Write(“alert(此用户还未注册!)”);return
13、 false;/判定用户名和密码是否一致else if(!isBothExist)Response.Write(“alert(用户名和密码不一致,不能进入!)”);return false;elsereturn true;最终给出系统后端数据存放方案:利用Microsoft SQL Server 建立数据库及其存放过程。这里给出两个必需数据表,一是数据表News包含字段有:编号、姓名、标题、关键字、内容、类型、起源部门和日期。字段说明以下:参考文件1天极网新技术研究室。ASP.NET完全入门。重庆出版社,2Scott Worley著。ASP.NET技术内幕。王文龙 刘湘宁译。人民邮电出版社,3
14、Sanjeev Rohilla, Senthil Nathan, Surbhi Malhotra著。ADO.NET专业项目实例开发。陈君 王宝良译。中国水利水电出版社,4丁晟春 王曰芬。网站新闻公布管理系统设计和应用。现代图书情报技术。,55起源:考试大-自考站 ASP技术访问WEB数据库一、访问WEB数据库多个方案现在在WINDOWS环境下有多个访问WEB数据库技术,关键有:1.公共网关接口CGI(Common Gateway Interface)CGI是较早实现技术。适适用于多个服务器平台,如UNIX、WINDOWS等,但CGI开发成本高、维护困难、功效有限、不含有事务处理功效、占用服务器
15、资源较多。2. INTERNET数据库连接器IDC(Internet Database Connector)IDC集成在ISAPI(Internet Server API)中,充足利用了DLL技术,易扩充,但编程较CGI更为复杂,只适适用于小型数据库系统。3. 优异数据库连接器ADC(Advance Database Connector)ADC提供了ActiveX Control来访问数据库,它关键特点是数据查询由用户端浏览器实施,所以需将服务器端数据库中部分统计下载到用户端,系统开销较大、响应慢,只适适用于尤其频繁数据库查询操作。4. JAVA/JDBC语言编程JAVA语言是一个面向对象、易
16、移植、多线程控制语言,可经过JDBC去连接数据库。用JAVA/JDBC编写软件可移植性强,适适用于多个操作系统,但其实施效率和实施速度还不理想,现在无法建立高效、高速应用。5. 动态服务器页面ASP(Active Server Page)ASP是微软企业最新推出WEB应用开发技术,着重于处理动态网页和WEB数据库开发,编程灵活、简练,含有较高性能,是现在访问WEB数据库最好选择。二、ASP介绍1.ASP访问数据库原理ASP是服务器端脚本实施环境,可用来产生和实施动态高性能WEB服务器程序。当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来实施ASP文件,并解释其中脚本语言(J
17、Script 或VBScript),经过ODBC连接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作,最终ASP生成包含有数据查询结果HTML主页返回用户端显示。因为ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,所以ASP源程序不会泄密,增加了系统安全保密性。另外,ASP是面向对象脚本环境,用户可自行增加ActiveX组件来扩充其功效,拓展应用范围。2.ASP页面结构:ASP程序代码简单、通用,文件名由。asp结尾,ASP文件通常由四部分组成:1) 标准HTML标识:全部HTML标识均可使用。2) ASP语法命令:在 标签内ASP代码。
18、3) 服务器端include语句:可用#include语句调入其它ASP代码,增强了编程灵活性。4) 脚本语言:ASP自带JScript和VBScript两种脚本语言,增加了ASP编程功效,用户也可安装其它脚本语言,如Perl、Rexx等。3.ASP运行环境现在ASP可运行在三种环境下。1) WINDOWS NT server 4.0运行IIS 3.0(Internet Information Server)以上。2) WINDOWS NT workstation 4.0运行Peer Web Server 3.0以上。3) WINDOWS 95/98运行PWS(Personal Web Ser
19、ver)。其中以NT server上IIS功效最强,提供了对ASP全方面支持,是创建高速、稳定ASP主页最好选择。4.ASP内建对象ASP提供了六个内建对象,供用户直接调用:1) Application对象:负责管理全部会话信息,可用来在指定应用程序全部用户之间共享信息。2) Session对象:存贮特定用户会话信息,只被该用户访问,当用户在不一样WEB页面跳转时,Session中变量在用户整个会话过程中一直保留。Session对象需cookie支持。3) Request对象:从用户端取得信息传输给服务器,是ASP读取用户输入关键方法。4) Response对象:服务器将输出内容发送到用户端。
20、5) Server对象:提供对服务器相关方法和属性访问。6) Object Context对象:IIS 4.0新增对象,用来进行事务处理。此项功效需得到MTS(Microsoft Transcation Server)管理支持。5. ASP关键内置组件:1) Ad Rotator组件:用来按指定计划在同一页上自动轮换显示广告,用于WWW上日益关键广告服务。2) Browser Capabilities组件:确定访问WEB站点用户浏览器功效数据,包含类型、性能、版本等。3) Database Access组件:提供ADO (ActiveX Data Objects)来访问支持ODBC数据库。4)
21、 File Access组件:提供对服务器端文件读写功效。5) Content Linking组件:生成WEB页内容列表,并将各页次序连接,用于制作导航条。另外,还可安装Myinfo、Counters、Content Rotator、Page Count等组件,用户也可自行编制Actiive组件,以提升系统实用性。6. Database Access组件ADOWWW上很关键应用是访问WEB数据库,用ASP访问WEB数据库时,必需使用ADO组件,ADO是ASP内置ActiveX服务器组件(ActiveX Server Component),经过在WEB服务器上设置ODBC和OLEDB可连接多个数
22、据库:如SYBASE、ORACLE、INFORMIX、SQL SERVER、ACCESS、VFP等,是对现在微软所支持数据库进行操作最有效和最简单直接方法。ADO组件关键提供了以下七个对象和四个集合来访问数据库。1) Connection对象:建立和后台数据库连接。2) Command对象:实施SQL指令,访问数据库。3) Parameters对象和Parameters集合:为Command对象提供数据和参数。4) RecordSet对象:存放访问数据库后数据信息,是最常常使用对象。5) Field对象和Field集合:提供对RecordSet中目前统计各个字段进行访问功效。6) Proper
23、ty对象和Properties集合:提供相关信息,供Connection、Command、RecordSet、Field对象使用。7) Error对象和Errors集合:提供访问数据库时错误信息。三、ASP访问数据库步骤在ASP中,使用ADO组件访问后台数据库,可经过以下步骤进行:1. 定义数据源在WEB服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你期望数据库种类、名称、位置等。本文定义“SQL SERVER”,数据源为“HT”,数据库名称为“HTDATA”,脚本语言采取Jscript.2. 使用ADO组件查询WEB数据库1) 调用Server.CreateO
24、bject方法取得“ADODB.Connection”实例,再使用Open方法打开数据库:conn = Server.CreateObject(“ADODB.Connection”)conn.Open(“HT”)2) 指定要实施SQL命令连接数据库后,可对数据库操作,如查询,修改,删除等,这些全部是经过SQL指令来完成,如要在数据表signaltab中查询代码中含有“X”统计sqlStr = “select * from signaltab where code like %X%”rs = conn.Execute(sqlStr)3) 使用RecordSet属性和方法,并显示结果为了更正确地跟
25、踪数据,要用RecordSet组件创建包含数据游标,游标就是储存在内存中数据。rs = Server.CreateObject(“ADODB.RecordSet”)rs.Open(sqlStr,conn,1,A)注:A=1读取A=3 新增、修改、删除在RecordSet组件中,常见属性和方法有:rs.Fields.Count: RecordSet对象字段数。rs(i)。Name: 第i个字段名称,i为0至rs.Fields.Count-1rs(i): 第i个字段数据,i为0至rs.Fields.Count-1rs(“字段名”): 指定字段数据。rs.Record.Count:游标中数据统计总数
26、。rs.EOF: 是否最终一条统计。rs.MoveFirst: 指向第一条统计。rs.MoveLast: 指向最终一条统计。rs.MovePrev: 指向上一条统计。rs.MoveNext: 指向下一条统计。rs.GetRows: 将数据放入数组中。rs.Properties.Count:ADOResultSet或Connection属性个数。rs.Properties(item)。Name:ADOResultSet或Connection名称。rs.Properties: ADOResultSet或Connection值。rs.close(): 关闭连接。4) 关闭数据库conn.close(
27、)四、查询WEB数据库举例下面这段示例程序是访问SQL SERVER数据库 signaltab表,表中有三个字段:code(代码字段,字符型,3位),class(分类字段,字符型,10位),memo(备注字段,字符型,20位)。程序中数据源DSN:HT、用户名:client、口令:passwd.屏幕输入页面input.asp请输入查询条件PLEASE INPUT CONDITION input LANGUAGE=“JavaScript” TYPE=“submit” VALUE=“确定” NAME=“B1”数据库处理程序shotquery.aspvar signalCode=Request.Fo
28、rm(“signalCode”);dbConn = Server.CreateObject(“ADODB.Connection”);dbConn.open(“DSN=HT;UID=client;PWD=passwd”);rs = Server.CreateObject(“ADODB.RecordSet”);var sqlStr = “select * from signaltab order by code”;rs.open(sqlStr,dbConn,1);if(rs.RecordCount 1) Response.write(“ 无符合条件统计”);Response.write(“ ”);
29、else Response.write(“数据查询结果”);Response.write(“代码分类备注”);for(var i = 1;i = rs.Pagesize;i+) if(!rs.Eof) Response.write(“”+rs(“code”)+“”);Response.write(“”+rs(“class”)+“”);Response.write(“”+rs(“memo”)+“”);Response.write(“”);rs.MoveNext();else break;Response.write(“”);rs.close();dbConn.close();ASP制作学生档案管
30、理系统摘要:本系统是依据现代化校园发展而设计基于ASP学生档案管理系统,本系统能够方便老师、家长来学校查找学生。实现全校学生信息在线查询。还能够对新来学员信息进行信息录入。因为学员上课情况复杂,能够实现信息修改,立即调整学员基础情况。关键字 ASP 在线查询 信息录入 信息修改一、制作数据库和建立数据源1、利用Microsoft Access 制作数据库,取名为information,然后制作表,表名为infor.下面写入数据字段。图所表示:2、建立ODBC数据源(在 professional 系统中建立)步骤:控制面板管理工具ODBC数据源系统DSNAdd。ODBC界面二、系统界面一个好系统
31、需要一个友好用户界面。因为本系统是基于ASP开发,所以,我们利用网页制作工具制作友好用户界面。部分界面图所表示:进入界面信息录入界面三、程序实现因为本系统是基于ASP开发实现在线操作系统。所以,本系统完成需要借助HTML,又因为HTML是网页编程基础,所以,在这里就省去HTML代码,相信大家全部是HTML高手。1、信息录入%dim strsql,rsset conn=createobject(“ADODB.connection”) /建立ADODB连接conn.open (“DSN=information;UID=;PWD=;”) /打开数据源informationset rs=createo
32、bject(“ADODB.Recordset”) /建立统计对象rsrs.open “infor”,conn,3,3 /打开数据库里infor表rs.Addnew /添加一条新统计rs(“name”)。value=request.form(“name”) /*取得表单名为 name里内容“送”到数据库name统计里(备注:表单名是信息录入界面里提醒信息是“姓名”表单域名字,以下类似)*/rs(“sex”)。value=request.form(“sex”)rs(“birth”)。value=request.form(“birthday”)rs(“zzmm”)。value=request.for
33、m(“zz”)rs(“teach”)。value=request.form(“teach”)rs(“xl”)。value=request.form(“xl”)rs(“class”)。value=request.form(“class”)rs(“school”)。value=request.form(“school”)rs(“add”)。value=request.form(“add”)rs(“tel”)。value=request.form(“tel”)rs(“hy”)。value=request.form(“mar”)rs(“jg”)。value=request.form(“addr”)rs
34、(“career”)。value=request.form(“career”)rs(“date”)。value=request.form(“time”)rs(“school”)。value=request.form(“school”)rs.Update /保留数据库里统计Response.Write (“你已经成功注册这位学员信息。请继续注册 ”) /显示提醒信息rs.close /关闭数据统计conn.close /关闭连接set rs=nothingset conn=nothing%2、信息查询 /本行写上要显示字段对应汉字名姓名性别出生年学历政治面貌专业班级班主任入课时间联络电话联络地址 /循环语句控制符合条件统计输出 /本行依据循环条件能够反复输出/*输出数据库中符合条件name字段值*/ 3、信息修改/ 以POST方法将修改统计经过zhuce.asp页面程序保留到数据库当中姓 名:td wi
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100