校园新闻发布系统的设计与实现,一篇计算机专业优秀毕业论文

校园新闻发布系统的设计与实现,一篇计算机专业优秀毕业论文[java毕业论文下载]

校园新闻发布系统的设计与实现

摘   要

校园新闻发布系统是在学校区域内为学校教育提供资源共享、信息交流和协同工作的计算机网络信息系统。随着网络技术的发展和Internet应用的普及,互联网已成为人们获取信息的重要来源。由于现在各大学校的教师和学生对信息的需求越来越高,校园信息对提高学校的教学质量、提高学生的学习质量等等有很重要的作用。

本毕业设计主要采用了B/S设计模式,基于ASP.NET+SQL Server2000技术开发了一个校园新闻发布系统。本校园新闻发布系统实现了如下功能:1 新闻浏览和搜索;2 系统管理员对系统和用户的管理;3 新闻管理员发布新闻。本系统其功能灵活并易于使用,能够实现网站新闻的动态管理,使得对新闻的管理更加及时,高效。本毕业论文将对该系统的开发过程和功能进行详细的阐述。

 

  关键词: 新闻发布;新闻浏览; B/S; ADO.NET数据访问; ASP.NET

   

 

 

 

 

 

 

 

 

 

 

 

 

           

 

 

 

The Design and Implementation of Campus News System

                                Abstract

This campus news system is developed by ASP.NET and SQL Server2000 technology based on the B/S model and it provides an efficient database stored procedures. 

The system realized three functions: news browsing, news publish, system and user management. The system realized a dynamic website management, and make news management efficiently, and improve work efficiency. In this paper the process of the development will be introduced in detail.

 

Key words:  News publish; News view; B/S; ADO.NET; ASP.NET;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

目  录

论文总页数:25页

1 引言 1

2 相关理论基础 1

2.1  B/S模式 1

2.2  ASP.NET技术 2

2.3 SQL SERVER 2000 2

3 需求分析 3

3.1 系统功能需求 3

3.2 系统性能需求 3

4 系统功能设计方案 4

4.1总体设计 4

4.2新闻浏览和显示模块 4

4.3系统管理员和新闻管理员模块 5

5数据库表的设计与实现 6

5.1 数据表 6

5.1.1 新闻分类表 6

5.1.2 新闻条目表 6

5.1.3 新闻评论表 7

5.1.4 用户管理表 7

5.1.5 各表之间的关系图 7

5.2 存储过程 8

6 系统功能的设计与实现 9

6.1 系统登陆首页 9

6.2 新闻浏览 9

6.3 新闻搜索 9

6.4 系统管理员 11

6.5 进入分类管理 11

6.6 添加新闻 12

6.7 新闻管理 14

6.8 新闻转移 16

6.9 添加用户 17

6.10 用户管理 18

6.11 修改账号 19

6.12 权限管理 19

6.13 新闻管理员 21

7 系统测试 22

     22

参考文献 23

     24

     25

 

 

1 引言

随着网络技术的发展和Internet应用的普及,特别是现在校园的信息化,网络化在飞速的发展,互联网已成为人们获取信息的重要来源,新闻是信息的重要内容之一。校园信息网对提高学校的教学质量、提高学生的学习质量等等起了非常重要的作用,学校很重视校园新闻发布系统的发展。

传统的网站新闻管理方式有两种,一是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用。二是基于ASP和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。但是由于ASP本身的局限性使得系统有一些不可克服的缺陷,而采取了ASP.NET。

校园发布系统,是将网页上的某些需要经常变动的信息,类似校园新闻,校园之家,事实政治等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上的一种网站应用程序。网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。 本系统的出现大大减轻了网站更新维护的工作量,通过数据库的引用,将网站的更新维护工作简化到只需录入文字等,从而使网站的更新速度大大缩短,在某些专门的网上新闻站点,如新浪的新闻中心等,新闻的更新速度已经是即时更新,从而大大加快了信息的传播速度,也吸引了更多的长期用户群,时时保持网站的活动力和影响力。当然本系统还不能与新浪网媲美,但是它基本上达到了教师和学生对校园新闻发布系统的要求,用户能进行新闻浏览,新闻搜索,管理员能对新闻进行管理等等。 

2 相关理论基础

2.1  B/S模式

B/S结构(Browser/Server结构)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。B/S架构管理软件更是方便、快捷、高效。B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。

2.2  ASP.NET技术 

ASP.NET是微软公司的Active Server Pages.NET的最新版本,是一种建立在公共语言运行库上的编程构架,可用于在服务器上开发功能强大的Web应用程序。它不但执行效率大幅度提高,对代码的控制也做的很好,并且支持WebControls功能和多种语言(如C#,Jscript等等),以高安全性,易管理性和高扩展性等特点著称。

ASP.NET技术的系统性能上有很大的改善,其主要表现在以下几方面:

(1) 由于ASP页面每次打开都必须经过先编译后解释的过程,所以页面在反复打开时速度没有任何提升,而ASP.NET页面只需要一次编译后不需要重新编译,直到该页面被修改或Web应用程序重新启动。这使得在多次访问时速度有了极大的提升。

(2) 由于ASP没有提供任何输出数据为内容的元件,所以在使用ASP撰写数据库页面时只能借助ADO的RecordSet对象逐笔读取记录,而ASP.NET通过ADO.NET提供的DataGrid,DataReader或DateSet等数据库元件可以直接和数据库联系。

(3) 执行效率的大幅提高:ASP.NET是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。

(4) 强大性和适应性:因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。

(5) 安全性:内置Windows身份验证和基于每个应用程序的配置保证了应用程序是安全的。

2.3 SQL SERVER 2000 

SQL Server 2000数据库是微软公司研制开发的数据库管理系统,可以进行数据库的建立,对数据库进行查询操作,安全性设置工作等。SQL Server 2000拥有如下功能:

(1) 使用SQL Server 2000,开发人员通过使用相似的语言,例如微软的Visual C# .NET和微软的Visual Basic,将能够创立数据库对象。开发人员还将能够建立两个新的对象——用户定义的类和集合。

(2) SQL SERVER 2000将支持丰富的全文应用软件。服务器的编目功能将得到增强,对编目的对象提供强大的灵活性。查询性能和升级性将大幅得到改进,同时管理工具将为有关全文功能的运行,提供更深入的了解。

数据库技术是现代信息技术的重要组成部分,随着一些大型应用的开发应用,数据库技术也随之发展进步。为了有效管理数据库,创建一组存储过程是非常必要的,否则我们不仅需要在数据操作时使用各种SQL语句,而且也无法复用这些SQL语句,更糟糕的是我们无法保证数据操作的效率;同是运用ADO.NET技术数据库的访问,它使得数据库编程变得相当容易。

3 需求分析

3.1 系统功能需求

本系统的目的是实现校园新闻发布系统的基本功能。

本新闻发布系统提供了不同类型新闻(如校园新闻、体育新闻和校园之家等),满足不同用户需求;系统将用户分为:普通用户,系统管理员和新闻管理员。

普通用户能在本系统中进行新闻浏览,阅读,新闻搜索。每条新闻的标题被做成一个链接,用户点击它们就能跳转页面进行新闻阅读;新闻阅读页面,每条新闻的详细信息将被取出,包括内容、标题等;用户能根据自己的需要搜索新闻,如可以通过新闻标题或新闻内容对新闻进行搜索,这样可以快速地找到符合条件的新闻,并输出搜索结果;用户能对新闻进行被评论(允许匿名评论)。

系统管理员可以进行新闻分类管理、添加新闻、修改新闻、新闻审核和删除新闻,同时系统管理员能完成用户管理如包括系统用户管理、添加用户和更改账号。

新闻管理员拥有添加新闻和更改账号的权限。根据用户不同,给予不同权限,这样加强系统的管理,同时加强系统的安全性。

3.2 系统性能需求

操作的简易实用性本系统是校园新闻发布系统,针对的用户大多数是学生,教师等等。因此操作的简易实用性就体现的尤其重要。在此系统的开发中就很好的体现了这一点,系统的界面美观,典雅,充满了人性化;用户操作起来也容易上手。对于一个校园新闻发布系统而言,新闻信息是很多的,而且使用人数较多,所以对系统的安全性有比较高的要求:对于数据库,要设置不同用户的权限,数据的修改必须由合法用户操作。

4 系统功能设计方案

4.1总体设计

本系统中,系统的功能主要分为三个功能模块:新闻浏览和搜索模块;系统管理员模块;新闻管理员模块。总体功能设计图如下,如图4-1。

 

 

 

 

 

 

 

 

 

 

 

 

图4-1 总体功能设计图

4.2新闻浏览和显示模块

普通用户登陆该系统后,进入系统首页,普通用户可以根据自己的需要进行新闻浏览,如对热点新闻,头版新闻,最新新闻的浏览;还可以进行新闻搜索,可以通过新闻内容或新闻题目搜索新闻。运用起来很方便。如图4-2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图4-2 新闻浏览和搜索示意图

4.3系统管理员和新闻管理员模块

这是本系统管理员功能示意图,管理员分为系统管理员和新闻管理员。系统管理员拥有较强的权限,能完成以下功能:新闻分类,如可将新闻分为校园新闻、校园之家、事实政治等等;添加新闻,通过不同的分类新闻进行新闻的添加;新闻管理等等新闻管理员只拥有新闻添加和更改账号的功能如图4-3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图4-3 系统管理员和新闻管理员示意图

5数据库表的设计与实现

5.1 数据表

在该系统中共需要创建4个数据表,用于存放新闻发布系统所需要的数据。        

新闻发布和管理模块涉及的数据包括:新闻分类,新闻,用户和新闻评论,因为支持一个新闻发布和管理系统的基本数据结构只需要这些基本数据表就可以。

5.1.1 新闻分类表

新闻分类表db_fClass中保存了每一个新闻类目的名称,信息如下表5-1。

表5-1 新闻分类表

字段列名

字段类型

字段大小

必填字段

说明

classID

Bigint

8

新闻类目的唯一ID值

className

Char

40

新闻类目的名称

ArticleNums

Bigint

8

该新闻类目所有新闻的数量

5.1.2 新闻条目表

新闻条目条db_Article中包含了所有类目中的所有新闻条目的相关信息和具体新闻内容,如下表5-2。这里,username引用了db_Admin中的username列作为外键,而classmane引用了db_fClass中的classname列作为外键。在这里,由于外键的约束,所以只有管理员才拥有提交新闻的功能。

表5-2 新闻条目表

字段列名

字段类型

字段大小

必填字段

说明

articleid

Bigint

8

新闻条目的唯一ID值

content

Ntext

16

新闻条目的HTML格式正文内容

title

Nvarchar

500

新闻标题

classnae

Char

40

新闻所属类目的ID

username

Char

100

提交新闻的用户ID

headline

Int

4

是否作为头条新闻显示

summary

Char

400

新闻内容介绍

Nkey

Char

400

相关新闻

writer

Char

100

新闻作者

source

Char

400

新闻来源

hints

Bigint

8

新闻访问次数

dateandtime

Datetime

8

新闻提交时间

checkup

Int

4

是否通过新闻审核

highligt

Int

4

是否高亮显示新闻标题

 

5.1.3 新闻评论表

新闻评论表db_Remark的结构设计如下表5-3。

这里,只有articleid作为外键和新闻条目表db_Article连接起来,并不存在username的外键约束,所以,提交新闻评论的用户可以不是系统用户,不需登录,新闻评论也不需要审核即可发布。

表5-3 新闻评论表

字段列名

字段类型

字段大小

必填字段

说明

id

Bigint

8

新闻评论的唯一ID值

articleid

Bigint

8

新闻评论对应的新闻条目ID

username

Char

100

新闻评论提交者

body

Char

1000

新闻评论的内容

face

Char

20

新闻评论采用的表情

 

5.1.4 用户管理表

    用户管理表db_Admin的设计结构如下表5-4。

表5-4 用户管理表

字段列名

字段类型

字段大小

必填字段

说明

id

Bigint

8

用户的唯一ID值

username

Char

100

用户名称

password

Char

100

用户密码

userclass

Char

20

用户所属类型

remark

Nchar

200

对于用户的说明

addnum

Bigint

8

用户提交新闻的数量

popedom

Nchar

100

用户所拥有的管理权限

classname

Char

40

拥有管理权限的新闻类目

 

5.1.5 各表之间的关系图

由后台SQL数据库关系图向导引导下自动生成各表间的关系图。从图中可以知道各表之间的关系。如图5-1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图5-1 数据库中各表之间关系图

5.2 存储过程

为了有效管理数据库,创建一组存储过程是非常必要的,否则我们不仅需要在数据操作时使用各种SQL语句,而且也无法复用这些SQL语句,数据操作的效率受到影响。下面是数据库设计中所包含的部分存储过程及参数,说明等。如表5-5

表5-5 部分存储过程及参数说明表

存储过程

存储过程参数

存储过程说明

Sp_SetClassNumZero

@className char(200)

设置某一新闻分类中册新闻数为0

Sp_addFclass

@className char(200)

添加一个新闻分类

Sp_delAdmin

@id bigint

删除一个管理用户

Sp_delClass

@classID bigint

删除某一个新闻分类

Sp_addAdmin

@username char(41),@password nchar(40),@userclass nchar(20),@remark nchar(200)

添加一个管理员用户

Sp_delNum

@username char(200)

减少某个用户提交的新闻数目

Sp_searchCkArticleByTitle

@title nvarchar(200)

根据标题搜索审核通过的新闻

6 系统功能的设计与实现

6.1 系统登陆首页

 这是本系统的主页面,普通用户和管理员均能登陆,如图6-1。

 

 

 

 

 

 

 

 

 

 

图6-1 普通用户和管理员首页登陆

6.2 新闻浏览

  普通用户可以通过点击导航栏上的校园新闻进行初步的新闻浏览,在这里普通用户能浏览到校园新闻初始的界面。如图6-2。

 

 

 

 

 

              

图6-2 新闻浏览

 

 

 

 

 

图6-2 新闻浏览

6.3 新闻搜索

接下来,普通用户可以点击搜索新闻按钮,进入新闻搜索页面。这里普通用户可以通过新闻内容或新闻题目进行新闻的搜索。以助学中心为标题,点击搜索,这时搜索结果会出该新闻:助学中心。如图6-3

 

 

图6-3 新闻搜索

新闻搜索核心代码: 

private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)

{

            if(Page.IsValid)

{

if(search1.SelectedIndex==0) //搜索标题

{

SqlConnection1=newSqlConnection(ConfigurationSettings.AppSettings["dsn"]);

SqlDataAdapter1 = new SqlDataAdapter();

SqlDataAdapter1.SelectCommand=new SqlCommand("sp_searchCkArticleByTitle",SqlConnection1);

SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;

SqlDataAdapter1.SelectCommand.Parameters.Add("@title",SqlDbType.NVarChar ,500);

SqlDataAdapter1.SelectCommand.Parameters["@title"].Value=keyword.Text ;

bindgrid();

}

else //搜索内容

{

SqlConnection1=newSqlConnection(ConfigurationSettings.AppSettings["dsn"]);

SqlDataAdapter1 = new SqlDataAdapter();

SqlDataAdapter1.SelectCommand=newSqlCommand("sp_searchCkArticleByContent",SqlConnection1);

SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;

SqlDataAdapter1.SelectCommand.Parameters.Add("@content",SqlDbType.NText);

SqlDataAdapter1.SelectCommand.Parameters["@content"].Value=keyword.Text.Trim() ; bindgrid();

}

}

}

6.4 系统管理员

这是管理员登陆界面,管理员通过用户名,密码的输入,登陆到系统管理后台,管理员分为系统管理员和新闻管理员。显示系统管理员所拥有的管理权限,接下来系统管理员就能执行自己所拥有的权限。如图6-4

 

图6-4系统管理员权限

6.5 进入分类管理

系统管理员进入此模块时,能对新闻分类进行管理。如图所示系统管理员能添加分类,如校园新闻,学术交流,校园广播,教师信息,学生工作处等等,并且等对分类新闻进行修改和删除。如图6-5

 

图6-5 添加新闻分类

添加新闻分类核心代码:

private void Submit_Click(object sender, System.EventArgs e)

{

if(Page.IsValid)

{

SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);

SqlCommand1=new SqlCommand("sp_selFclass",SqlConnection1);

SqlCommand1.CommandType=CommandType.StoredProcedure;

SqlCommand1.Parameters.Add("@classname",SqlDbType.Char,200);

SqlCommand1.Parameters["@classname"].Value=ClassName.Text.Trim();   

try

{

SqlConnection1.Open();

SqlDataReader1=SqlCommand1.ExecuteReader();

if(SqlDataReader1.Read()==true)   

{

myLabel.Text="已有此分类,请重新输入名字!";

SqlDataReader1.Close();

}

else

{

SqlDataReader1.Close();

SqlCommand1=new SqlCommand("sp_addFclass",SqlConnection1);

 SqlCommand1.CommandType=CommandType.StoredProcedure;

 SqlCommand1.Parameters.Add("@classname",SqlDbType.Char,200);

SqlCommand1.Parameters["@classname"].Value=ClassName.Text.Trim();  

SqlCommand1.ExecuteNonQuery() ;    

myLabel.Text="添加分类成功!";

}

}

catch (SqlException e1)

{

myLabel.Text ="数据库操作错误:"+e1.Message;

}

6.6 添加新闻

系统管理员选择新闻类型后,就能对新闻进行详细的添加,如新闻标题,新闻属性,新闻内容,新闻介绍,相关新闻,作者。如图6-6

 

图6-6 添加新闻

校园新闻发布系统的设计与实现,一篇计算机专业优秀毕业论文[点击下载]

如需要全部源码,联系QQ:2812491287如需要全部源码,联系QQ:2812491287

评论