新闻发布与管理系统的构建oracle.docx

上传人:b****1 文档编号:2916478 上传时间:2023-05-05 格式:DOCX 页数:26 大小:253.20KB
下载 相关 举报
新闻发布与管理系统的构建oracle.docx_第1页
第1页 / 共26页
新闻发布与管理系统的构建oracle.docx_第2页
第2页 / 共26页
新闻发布与管理系统的构建oracle.docx_第3页
第3页 / 共26页
新闻发布与管理系统的构建oracle.docx_第4页
第4页 / 共26页
新闻发布与管理系统的构建oracle.docx_第5页
第5页 / 共26页
新闻发布与管理系统的构建oracle.docx_第6页
第6页 / 共26页
新闻发布与管理系统的构建oracle.docx_第7页
第7页 / 共26页
新闻发布与管理系统的构建oracle.docx_第8页
第8页 / 共26页
新闻发布与管理系统的构建oracle.docx_第9页
第9页 / 共26页
新闻发布与管理系统的构建oracle.docx_第10页
第10页 / 共26页
新闻发布与管理系统的构建oracle.docx_第11页
第11页 / 共26页
新闻发布与管理系统的构建oracle.docx_第12页
第12页 / 共26页
新闻发布与管理系统的构建oracle.docx_第13页
第13页 / 共26页
新闻发布与管理系统的构建oracle.docx_第14页
第14页 / 共26页
新闻发布与管理系统的构建oracle.docx_第15页
第15页 / 共26页
新闻发布与管理系统的构建oracle.docx_第16页
第16页 / 共26页
新闻发布与管理系统的构建oracle.docx_第17页
第17页 / 共26页
新闻发布与管理系统的构建oracle.docx_第18页
第18页 / 共26页
新闻发布与管理系统的构建oracle.docx_第19页
第19页 / 共26页
新闻发布与管理系统的构建oracle.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

新闻发布与管理系统的构建oracle.docx

《新闻发布与管理系统的构建oracle.docx》由会员分享,可在线阅读,更多相关《新闻发布与管理系统的构建oracle.docx(26页珍藏版)》请在冰点文库上搜索。

新闻发布与管理系统的构建oracle.docx

新闻发布与管理系统的构建oracle

任务十新闻发布与管理系统的构建

教学重点与难点

✧新闻发布管理系统的分析与设计

✧新闻发布管理系统数据库的设计

✧新闻发布管理系统数据库的实现

✧新闻发布管理系统的实现

知识目标

✧系统的分析设计方式

✧实际应用系统中Oracle数据库的设计与实现方式

技术目标

✧Oracle数据库与表空间的创建

✧Oracle数据库服务的发布于管理

✧.Net中Oracle数据库的链接与操作

工作任务

1.提出新闻发布与管理系统的需求分析并进行系统设计;

2.应用Oracle对新闻发布与管理系统的数据库进行设计;

3.新闻与发布系统Oracle数据库的实现;

4.应用技术实现新闻发布与管理系统界面的设计;

5.应用技术实现新闻发布于管理系统功能的实现。

预备知识

知识点1动态网站开发技术

是美国微软公司推出较流行的.NetFramework框架下的Web应用程序(动态网站)开发技术,它以VisualC#为默许编程语言,同时支持等其他脚本语言,并能够在微软公司推出的VisualStudio.Net系列集成开发平台上实现可视化的Web应用程序的设计开发。

在本任务中咱们选择技术来进行新闻发与管理系统的设计开发。

咱们应用较新的技术,并利用VisualStudio2008.Net平台进行具体的设计开发工作。

任务系统的分析与设计

遵循Web应用程序系统开发的流程,先要对所开发的系统进行系统的需求分析,即咱们要第一弄清楚,利用本系统的用户对于要开的系统都有哪些要求。

子任务1需求分析

【任务分析】

新闻系统的开发相对于其它网站模块而言从技术上实现比较的简单,并无其他模块实现起来复杂和繁琐,也不需要利用自概念控件,其功能模块抽象起来比较的简单,在新闻利用之前,管理员能够在后台添加和管理新闻分类,在添加新闻分类完毕后,就可以够发布新闻并选择相应的分类,分类后的新闻将能够呈此刻不同的页面中以显示不同的分类的新闻。

从必然的意义上来讲,新闻系统的功能对于管理员而言,就是分类管理、新闻管理和评论管理;而对于普通用户而言就是新闻阅读和新闻评论,如图10-1为新闻发布与管理系统的用例图。

图10-1新闻发布与管理系统用例图

正如图10-1所示,管理员能够在后台进行新闻分类选择和信息填写进行新闻发布,管理员还能够对新闻分类和评论进行管理。

可是在管理员进行操作前,第一需要对管理员进行身份验证,以判断管理员是不是有合法的权限进行操作。

身份验证能够利用登录模块进行身份验证,可是这里的登录模块没有网站的登录控件复杂。

这里只需要实现对管理员进行判断,若是判断是管理员则能够通过,若是不是管理员则不允许通过的功能即可。

子任务2系统设计

【任务分析】

由需求分析部份取得的功能要求,咱们将为系统设计如下的功能页面:

❑登录页面:

管理员登录页面,为管理员提供身份验证。

❑新闻管理页面:

为管理员提供新闻添加和管理功能。

❑新闻修改页面:

为管理员提供新闻的修改功能。

❑新闻分类管理页面:

为管理员提供新闻分类的添加和管理。

❑评论管理页面:

为管理员提供新闻评论的管理功能。

❑新闻页面:

用于显示新闻具体内容、进行评论。

❑首页挪用:

用于进行新闻列表的显示,方便用户进行新闻查阅。

这些页面能够为管理员的新闻发布和更新进行操作,管理员第一需要在登录页面进行登录操作并进行身份验证。

若是验证通过,就可以够在后台页面进行新闻分类管理、评论管理和新闻管理操作,管理员能够通过新闻分类操作和新闻操作进行新闻的发布和归类,如此有助于在前台的页面中进行挪用。

在前台显示中,一样还需要新闻显示页面和首页,新闻显示页面用于显示单个新闻和进行评论,而首页用于显示新闻相应的列表,如在新浪、腾讯等网站的首页,都是挪用最新的一些新闻列表来呈现的,如此有助于用户对新闻的阅读。

【实施步骤】

系统功能设计图如图所示。

 

 

图系统功能设计图

任务设计和创建数据库

为了保证新闻发布与管理系统的安全稳固运行,咱们选择了Oracle数据库作为该系统的数据存取介质,所以咱们要为该系统创建Oracle数据库、表存储空间、用户及新闻系统所需的多个表进行新闻描述、新闻操作、新闻评论和用户管理等。

子任务1创建数据库、表空间和用户

【任务分析】

咱们要为此新闻发布与管理系统单独创建一个Oracle数据库、一个表空间和用户,以便于对表空间中的表和数据文件进行管理。

【实施步骤】

1.创建数据库

创建数据库可利用DatabaseConfigurationAssistant视图进行创建,也能够利用SQLPlus工具进行创建,具体实现步骤可参阅任务任务,这里咱们创建了数据库News,同时发布了同名的数据库服务News。

2.数据表空间的创建

利用CREATETABLESPACE语句为新闻发布与管理系统创建永久性表空间Newsspace。

实现代码如下:

SQL>CREATETABLESPACENewsspace

2DATAFILE‘E:

\APP\Administrator\oradata\News\’

3SIZE100M

4AUTOEXTENDONNEXT10M

5MAXSIZE500M;

表空间已创建。

上述创建表空间Newsspace的语句中,指定其对应的数据文件名称和路径,数据文件初始大小为100MB,自动增加,每次增加大小为10MB,最大可为500MB。

3.用户的创建

创建用户newuser,指定该用户的密码为admin,代码如下:

SQL>CREATEUSERnewsuserIDENTIFIEDBYadmin

2DEFAULTTABLESPACENewsspace

3TEMPORARYTABLESPACEtemp

4QUOTA20MONNewsspace;

用户已创建。

子任务2创建数据表和完整性约束

【任务分析】

在新闻系统设计中,需要多个表进行新闻描述,同时为了保证管理用户的安全性,还需要设计

管理员表,这些表包括news、newsclass、remark和admin四个表,这四个表别离存储新闻、新闻分类、新闻评论和管理员信息。

四个表的字段及说明如表10-1~所示。

表10-1news表

字段名称

数据类型

约束

字段说明

Id

number

主键

新闻编号

author

varchar2(20)

非空

新闻的作者

Title

varchar2(50)

非空

新闻的标题

time

date

非空

新闻发布的时间

Content

clob

非空

新闻的内容

hits

number

新闻的阅读次数

classid

number

非空

新闻的分类编码,外键,指向newsclass表中的Id

表10-2newsclass表

字段名称

数据类型

约束

字段说明

Id

Number

主键

新闻分类编号

classname

varchar2(20)

非空

新闻的分类名

表10-3remark表

字段名称

数据类型

约束

字段说明

Id

Number

主键

新闻评论编号

newsid

Number

外键,指向news表中的Id

新闻ID,标识评论的对象,

content

clob

非空

评论内容

username

varchar2(20)

非空

评论人

Ip

varchar2(50)

非空

评论用户IP地址

表10-4admin表

字段名称

数据类型

允许空

字段说明

Id

Number

主键

管理员用户编号

admin

varchar2(20)

非空

管理员用户名

password

varchar2(20)

非空

管理员用户密码

数据表的创建能够利用工具PLSQLDeveloper通过可视化界面来创建,也能够利用工具SqlPlus利用SQL语句进行创建。

【实施步骤】

创建news表及约束的代码如下所示。

--Createtable

createtablenews

idnumbernotnull,

titlenvarchar2(50),

authornvarchar2(20),

timedate,

contentclob,

hitsnumber,

classidnumber

);

--Create/Recreateprimary,uniqueandforeignkeyconstraints

altertablenews

addconstraintPK_IDprimarykey(ID);

altertableNEWS

addconstraintFK_IDforeignkey(CLASSID)

referencesnewsclass(ID);

newsclass用于描述新闻的分类的信息,newsclass表的表的字段及说明如图表10-2。

创建newsclass表及约束的代码如下所示。

--Createtable

createtablenewsclass

idnumbernotnull,

classnamenvarchar2(20)

);

--Create/Recreateprimary,uniqueandforeignkeyconstraints

altertablenewsclass

addconstraintPK_ClassesIdprimarykey();

remark用于描述新闻评价的信息,remark表的字段及说明如图表10-3。

创建remark表及约束的代码如下所示。

--Createtable

createtableremark

idnumbernotnull,

newsidnumbernotnull,

contentclobnotnull,

usernamenvarchar2(20),

ipnvarchar2(50)notnull

);

--Create/Recreateprimary,uniqueandforeignkeyconstraints

altertablenewsclass

addconstraintPK_IDprimarykey(ID);

altertableNEWS

addconstraintFK_IDforeignkey(NEWSID)

referencesnews(ID);

admin表只需要保留管理员的用户名和密码即可,其表的表的字段及说明如图表10-4,创建admin表及约束的代码如下所示。

--Createtable

createtableadmin

idnumbernotnull,

adminvarchar2(20),

passwordvarchar2(20)

);

--Create/Recreateprimary,uniqueandforeignkeyconstraints

altertableadmin

addconstraintPK_AdminIdprimarykey(ID);

子任务3主键自增设计

【任务分析】

对数据库中的表添加数据时,自动自动递增的实现能够减轻程序的压力,而Oracle数据库提供的主键不能实现自动增加的功能,需要开发这借助于表的序列进行实现。

【实施步骤】

为包括主键列的表创建序列。

以创建news表的序列News_Sequ为例,代码如下:

SQL>CREATESEQUENCENews_Sequ

2MINVALUE1MAXVALUE99999

3INCREMENTBY1

4STARTWITH1

5NOCYCLENOORDERNOCACHE;

序列已创建。

利用一样的方式为newsclass、remark、admin表创建序列Newsclass_Sequ、Remark_Sequ、Admin_Sequ,具体实现进程这里再也不进行说明。

如此在对相应的表添加数据时,SQL语句在自增主键位置上的值直接写”序列名.NEXTVAL”即可。

任务新闻发布与管理系统部份功能的实现

前面介绍了该新闻发布与管理系统需要实现多个功能,这里由于篇幅有限,将只对系统中比较重要的功能模块进行具体介绍,系统的其他实现部份能够参考本书的随带光盘文件。

子任务1Oracle数据库系统的连接

【任务分析】

.Net中要实现Oracle数据库的操作,第一要进行数据库的连接,在连接Oralce数据库前首先要肯定Oracle数据库的服务已经发布,本新闻发布与管理系统的News服务是已发布,咱们能够通过NetMananger工具进行连接测试,若是提示测试连接成功,咱们就可以够在.Net中进行连接操作了。

在.Net中进行Oracle数据库的操作,主要分两个步骤进行:

第一步,引入Oracle数据库连接类所在的命名空间;第二步,进行操作代码的编写。

【实施步骤】

1.引入命名空间

引入具体的命名空间代码如下:

Using;

Using数据库连接方式Connet(),该方式在APP_Code/文件的DB类中概念,代码如下:

publicOracleConnectionConnect()

{

OracleConnectionconn=new

OracleConnection["ConnectionString"].ToString();

();

returnconn;

}

文件中的链接字符串的内容如下:

UserID=system;Password=oracle;Unicode=True"providerName=""/>

其中:

DataSource:

用来指定连接的数据库服务

UserID:

指明连接的用户

Password:

用户密码

ProviderName:

指明数据库驱动程序

子任务2新闻系统主页的实现

【任务分析】

新闻系统主页主如果新闻的列表和新闻分类列表的显示,同时要求单击每一个新闻题目能够显示详细新闻内容;单击分类列表中的分类能够依照所点击的分类显示新闻列表,如图10-3所示。

【实施步骤】

1.新闻分类与题目列表的显示的界面

图新闻分类与新闻阅读页面效果

2.新闻分类列表的与新闻题目列表显示的核心代码

publicintclassid=0;

protectedvoidPage_Load(objectsender,EventArgse)

{

if["id"]!

=null)

classid=["id"].ToString());

newsbind();

newsclassbind();

}

ows[0]["title"].ToString();

=["table"].Rows[0]["content"].ToString();

=["table"].Rows[0]["author"].ToString();

=["table"].Rows[0]["time"].ToString();

RemarkDisplay();

}

}

else

{

("");

}

}

else

{

("");

}

}

oString()+"--评论者:

"+myreader["username"].ToString()+"(IP:

"+myreader["IP"].ToString()+")

";

}

}

1)新闻评论发布代码

protectedvoidButton1_Click(objectsender,EventArgse)

{

DBdb=newDB();

OracleConnectionconn=();

stringmysql="insertintoRemark(id,newsid,content,username,ip)values,"+["id"])+",'"++"','"++"','"++"')";

OracleCommandmycmd=newOracleCommand(mysql,conn);

if()>0)

{

RemarkDisplay();

}

}

子任务4新闻后台管理页面的实现

【任务分析】

新闻发布与管理系统的后台部份主要包括:

新闻发布、新闻管理、分类管理、评论管理及管理员用户管理五部份组成,如图所示。

期中新闻管理涉及到新闻的删除与修改的实现,分类管理设计到分类的添加、删除与修改,评论管理只有评论的删除功能,管理员用户管理包括:

添加、删除与修改管理员用户。

图新闻发布与管理系统后台

【实施步骤】

1)新闻发布的实现界面如图所示,实现代码如下:

图新闻发布显示效果

新闻发布实现代码:

try

{

DBdb=newDB();

OracleConnectionconn=();

stringstrsql="insertintonews(id,title,time,author,content,hits,classid)values,'"++"',sysdate,'"++"','"++"',0,"++")";

(srtsql);

("");

}

catch(Exceptionee)

{

());

}

2)新闻管理的实现:

图新闻管理页面效果

新闻管理页如图所示,是通过配置数据源控件以后将数据源控件绑定到GridView控件上实现的,数据源控件的源代码如下:

SqlDataSourceID="SqlDataSource1"runat="server"

ConnectionString="<%$ConnectionStrings:

ConnectionString%>"

DeleteCommand="DELETEFROMnewsWHEREid=:

id"

SelectCommand="SELECT*FROMnewsORDERBYidDESC"

ProviderName="<%$ConnectionStrings:

%>">

ParameterName="id"DbType="Int32"/>

SqlDataSource>

3)新闻修改页面代码的实现:

图新闻修改页面效果

在图中点击某条新闻题目后面的修改即可进入新闻的修改页面如图,在该即可对新闻

进行从头编辑,其具体实现代码如下:

try

{

DBdb=newDB();

OracleConnectionconn=();

stringstrsql="updatenewssettitle='"++"',time=sysdate,author='"++"',content='"++"',classid='"++"'whereid='"+["id"]+"'";

(srtsql);

("");

}

catch(Exceptionee)

{

());

}

4)新闻分类管理的界面与实现代码如下:

图新闻分类管理页面效果图

点击图左侧的管理分类即会在右边显示分类管理页面如图所示。

该页面是利用数据源控件绑定ListView控件实现的,主要功能编辑、删除与新增都是在数据源控件中通过Sql语句实现的。

数据源控件的源代码入下:

SqlDataSourceID="SqlDataSource1"runat="server"

ConnectionString="<%$ConnectionStrings:

ConnectionString%>"

DeleteCommand="DELETEFROMnewsclassWHEREid=:

id"

InsertCommand="INSERTINTONEWSCLASS(ID,CLASSNAME)VALUES(NEWSCLASS_SEQUE."NEXTVAL",:

classname)"

SelectCommand="SELECT*FROMnewsclassORDERBYidDESC"

UpdateCommand="UPDATEnewsclassSETclassname=:

classnameWHEREid=:

id"

ProviderName="<%$ConnectionStrings:

%>">

ParameterName="id"Type="Int32"/>

ParameterName="classname"Type="String"/>

ParameterName="id"Type="Int32"/>

ParameterName="classname"Type="String"/>

SqlDataSource>

5)新闻评论管理的界面与代码如下:

图新闻评论页面效果

新闻评论页面,主要包括所有新闻的评论的查看与对非法评论的删除功能,在图页面左侧

点击评论管理即可进入该界面如图所示。

其实现主要也是通过数据源绑定GridView控件,数据源的配置源码入下:

SqlDataSourceID="SqlDataSource1"runat="server"

ConnectionString="<%$ConnectionStrings:

ConnectionString%>"

DeleteCommand="DELETEFROMremarkWHEREid=:

id"

SelectCommand="SELECT*FROMremarkORDERBYidDESC"

ProviderName="<%$ConnectionStrings:

%>">

Parameter

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2