1、湖南信息学院1毕业论文设计新闻发布系统设计与实现学生姓名:戴双雄学 号:201201306509年级专业:二一二级计算机网络技术指导老师:马英英二级学院:电子信息系湖南长沙提交日期:2014 年 5 月湖南信息学院2目 录摘要 21 引言 22 新闻发布系统分析 32.1 系统开发目的 32.2 现状分析 32.2.1 项目背景 32.2.2 项目简介 42.2.3 需求的分析 43 系统概要设计 431 网站结构规划 .432 网站功能模块设计 .533 数据设计 .5331 概念设计 5332 逻辑设计 6333 物理设计 .104 系统的实现 .124.1.管理新闻模块功能的实现:(ma
2、nage1.asp) .1242.添加图片模块功能的实现:(addphoto.asp) .155 总结 .19参考文献 .19致谢 .20湖南信息学院3新闻发布系统设计与实现作 者:戴双雄指导老师:马英英(湖南信息学院电子信息系 2012级计算机网络技术,长沙 410151) 摘要:随着计算机科学的发展,数据库技术在 Internet 中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。个性化已逐渐成为当今 Web 应用的潮流。利用 JSP 技术开发的网站新闻管理系统,实现了网站新闻的动态管理,因为可以用来动态发布新闻信息,所以使得对信息的管理更加及时、高效,提高了工作效率。关键词
3、:Struts 组建编程模型、ActionForm 的说明、样式层、持久层、服务层、控制层1 引言当今社会是信息竞争的社会,企业的信息化建设是提高企业管理效率的必要途径,在这样的一个信息化建设中,企业的新闻发布系统是企业对外快速传播信息的方法和门户。在这个“门户”中让拥有的企业能够快速准确的发布最新的信息,也可以让这个门户获得第一时间的最新信息,以此准确快速掌握及占有市场的先机。谁拥有互联网,谁就能拥有信息;谁就能占有市场的有有利的竞争地位,这也是成为了一条新的市场竞争规则。信息已成为一种隐型的财富,人们对信息的需求再也不是局限于单纯的电视、报纸等大众途径。随着 Internet 在中国的发展
4、日新月异,人们在日常生活中也越来越多地使用这项新技术来为自己的工作和生活服务,人们通过网络来获取信息的需求越来越大。而新闻发布系统是将一些新闻,手机等新产品品发布信息和企业界中的信息结合集中管理,分类,最后系统化和标准化发布到网站的一种网站应用系统。因此,新闻发布管理系统的设计是十分有必要的。通过使用该系统,管理员可以发布新闻、整理信息,而用户可以更加方便的对新闻进行搜索、查阅、评论等操作,双方都可以节约时间、人力、物力,符合社会发展的趋势,也充分发挥了网络的优势。湖南信息学院42 新闻发布系统分析2.1 系统开发目的随着计算机技术的发展,网络技术对我们生活和工作显得越来越重要了,特别是信息高
5、度发达的今天,人们对最新信息的需求和发布迫切地需要及时性。而动态交互式网页刚好提供了这些功能,本系统就是一个能够在网上实现新闻的网上多用户发布、多栏目管理、实时的进行行为统计和记录的网上交互系统。根据客户的要求,得到如下系统目标:新闻发布:管理员可以对新闻进行全局管理,其中主要为新闻的发布。用户可以随时从前台查看到管理员在后台所发布的消息。新闻选项管理:管理员可以对新闻选项进行管理。类别管理:管理员可以对新闻的所有类别进行全局管理。用户管理:管理员可以对注册会员进行管理。2.2 现状分析2.2.1 项目背景随着网络的发展,越来越多的企业或单位注重自己的网站建设。通过自己的网站,企业或单位可以展
6、示产品、服务,发布公告,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中新闻管理系统是构成网站的一个重要组成部分,它担负着重要的作用,一方面可以用来动态发布有关新产品或新开发项目,另一方面又可以及时向顾客公布业绩、技术与研究进展等,从而吸引顾客,扩大客户群。2.2.2 项目简介开发环境本系统按照软件工程学理论,对程序进行模块划分,谨慎进行概要和详细设计,最后进行物理设计和编程实现;以 windows XP 作为操作系统,采用Visual C+作为软件开发工具,SQL Server 作为数据库管理系统(DBMS),以及可视化工具辅助设计,以 ASPNET 为主流网站开发工具。
7、此系统共分为二大湖南信息学院5部分:前台新闻查看和后台新闻管理。前台主要用于用户浏览、查找新闻信息、友情链接等;后台主要用于管理员对新闻信息和一些其他信息进行管理。系统的功能模块划分既注重各个部分本身的功能又注重各个功能模块之间的联系各个模块既有较强的独立性又要留有适当的接口以便日后对功能进行扩充和完善求。2.2.3 需求的分析通过相关调查,要求网站具有以下功能;通过网络,展示各行业新闻及相关信息。提供新闻搜索功能。设置新闻人物投票功能,并统计投票数量。支持其他网站的友情链接。为后台管理提供管理入口第三系统设计专题管理:对于已发布的新闻可以将其进行归类到相应专题进行分类管理。3 系统概要设计
8、31 网站结构规划 整体风格:简单有效切易于操作。整体页面布局为:页顶部分、页底部分和中间内容部分,中间内容部分以自上而下的方式列出需要输入的所有字段,页底设置提交按钮。站点用图用色保持前后统一,当前模块名称均位于页顶部分左上角处。 同样的元素同样的命名,本着命名前后统一,使用系统具有连续性。简洁、清晰、不容易产生混淆的原则,尽量不采用生僻的专业用户,给用户容易理解的方式。 站点目录规划:除站点根目录外,包含 2 个子目录。其中,Common 目录存放公共文件,例如:数据库连接、公用函数、CSS 文件、JAVASCRIPT 文件等。PIC 目录存放站点所用的图片文件。 湖南信息学院632 网站
9、功能模块设计 站点由三大模块组成,分别是:用户登陆模块、新闻管理模块、日志查询模块。 用户登陆模块包括:用户通过系统管理员创建分配的登陆名和密码进行登陆该管理系统,登陆后用户可根据个性化情况修改登陆名称及修改登陆密码。完成工作后由该模块退出登陆。 新闻管理模块包括:新闻增加模块、新闻修改模块、新闻删除模块。新闻增加模块,主要新建相关新闻后提交并插入;新闻修改模块完成对已插入系统的新闻进行修改,即对已有记录进行在数据库中的更新,保证数据同步。新闻删除模块完成对已在系统新闻数据的删除,即在数据中丢弃已有相关数据。 日志查模块包括:新闻查询、操作者查询、日期查询。新闻查询根据新闻名称进行模糊查询,作
10、者查询根据用户的登陆名进行操作记录查,日期查询根据新闻修改后更新的最后一次日期为准进行模糊查确定。 33 数据设计 331 概念设计 因为整个系统涉及的实体和属性较多,分别存放相应子功能的数据信息,其中操作信息表和新闻信息表为关键表,用于存放用有的操作权限信息和新闻的具体细节信息。其他涉及用户信息、群组信息、专题信息根据相关外键进行关联。 湖南信息学院7332 逻辑设计 (1)在进入各模块前,首先进行系统模块权限的判断,不具备相应权限则拒绝进入;分配该权限则进入操作页面湖南信息学院8湖南信息学院9湖南信息学院10将 E-R 图转换为关系模式实际上就是将实体、实体属性和实体之间的联系转换为关系模
11、式,这种转换一般遵循如下原则: 1、一个实体转换为关系模式,实体属性就是关系的属性,实体的码就是关系的码。 2、一个没 m:n 联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。 3、一个 1:n 的联系可以转换为一个独立的关系模式,也可以与 n 端的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为 n 端实体的码。 4、一个 1:1 联系可以转换为一个独立的关系模式。也可以与任意一端的关系模式合并。 5、只有相同码的关系模式可合并。 对 ER 图转换为关系模
12、式,并对关系模式进行规范化处理后,如下所示: 用户(用户编码,用户名称,登陆名,登陆密码,EMAIL,用户权限,用户所在组 ID,栏目权限,操作权限,用户描述)主键:专题(专题编码,专题名称,父专题,专题所在层,专题描述,专题对应图片,创建日期,同级别显示顺序,有效标志)主键:专题编码 湖南信息学院11用户操作权限基于用户归属的当前组信息,用户信息表所记录的权限信息决定了用户可查看的范围。 一条新闻可以选择相应的栏目和专题进行分类,纳入栏目信息和专题信息进行管理,其中专题信息中的专题由 BASESPEC 创建。333 物理设计 数据库是存储在物理设备上的,涉及的数据表见下面的数据表说明。相关数
13、据库表结构如下:湖南信息学院12湖南信息学院134 系统的实现4.1.管理新闻模块功能的实现:(manage1.asp)点击“修改”转到相应新闻详细页面的代码:“修改 修改新闻页面的制作:(managenews.asp) 复制 index.asp 记录集 recordset1 到 managenews.asp 页面。 创建表单,类型参照 addnews.asp 中的表单。 将相应 ID 的数据库调用放入表单。 实现表单提交更新数据库中相应 ID 的内容的代码: “ METHOD=“POST“ name=“form1“ Fennei: “ size=“32“ 湖南信息学院14Newsimg: “
14、 size=“32“ Newsname: “ size=“32“ Time1: “ size=“32“ Content: “ size=“32“ “ 点击“删除”转到相应新闻详细页面的代码: “删除 删除新闻页面制作:(delnews.asp) 复制 index.asp 记录集 recordset1 到 managenews.asp 页面。 创建如 manage1.asp 中的表单和表格(除去“删除”和“修改”)。并把相应的数据库调用放入表格中。 实现删除新闻的代码: “ “ 动态显示最新添加新闻(一页 5 条)的功能实现代码: 0) AND (NOT Recordset1.EOF) % ID
15、 新闻名 新闻内容 新闻分类 42.添加图片模块功能的实现:(addphoto.asp)添加“提交”按钮,将表单内数据提交入数据库 photo 表内的实现代码如下:湖南信息学院16“ 动态显示最新添加图片(一页 5 条)的功能实现代码: 0) AND (NOT Recordset2.EOF) % ID 图片名 图片路径 “修改“删除 在外框架表格的第三行输入“首页 上一页 下一页 末页”。 点击相应按钮可以动态显示相应记录的实现代码: 湖南信息学院17“首页 “上一页 “下一页“末页数据库部分业务逻辑一致性: 当组权限删除时,统一修改其组所有成员信息包括组长。 Create or replac
16、e package users_cons is Procedure load_temp_table (v_group_id groups.group_id%type, V_class_id groups.class_id%type, V_operate_id groups.operate_id%type); Procedure remove_duplicates; End users_cons; Create or replace package body users_cons is (v_group_id groups.group_id%type, V_class_id groups.cla
17、ss_id%type, V_operate_id groups.operate_id%type) IsBegin Insert into users_cons_g values(v_group_id,v_class_id,v_operate_id); End load_temp_table; Procedureremove_duplicate is Begin For re in (select * from users_cons_g) loop End loop; Delete * from users where group_id=v_group_id and class_id=v_cla
18、ss_id and operate_id=v_operate_id; End remove_duplicate; End users_cons; Create or replace trigger users_ads After delete on groups BeginUsers_cons.remove_duplicate; End; 组长可单独修改或调整当前组成员权限信息,需保证调整权限在所在组内,不可修改其他组信息。如果出现相关错误信息,生成弹出错误信息提示。业务逻辑为输入用户 ID 和权限,则根据用户信息判断用户所在组,根据组信息确认权限是否能否被修改。 Create or Repl
19、ace PACKAEG errrors is Alt_error_01 constrant PLS_INETERGER:= -20003; Alt_error_01_txt constant varchar(100):= There is not find the member 湖南信息学院18Alt_error_02 constrant PLS_INETERGER:= -20004; Alt_error_02_txt constant varchar(100):= You can not modify it End errors; 下面要在约束包中封装业务逻辑。 Create or repl
20、ace package users_operate is Procedure cons_operate(user_id_g integer,operate_right_g varchar(200),err_code_01 PLS_INTEGER,err_text_01 varchar2, err_code_02 PLS_INTEGER,err_text_02 varchar2); Is End users_operate; Crete or replace package body users_operate is Procedure cons_operate(user_id_g intege
21、r,operate_right_g varchar(200),err_code PLS_INTEGER,err_text varchar2); Cursor V_User_id users.user_id%type; Cursor Group_id_g groups.group_id%type; V_operate_id groups.operate_right%type; Begin Open users(user_id) Loop Fetch users into v_user_id where user_id=user_id_g Exit users%notfound; raise_ap
22、plication_error(err_code_01,err_text_01); select group_id into group_id_g from users where user_id=v_user_id exit users%found; open groups(operate_right) end loop; fetch groups into v_operate_id where group_id=group_id_g exit groups%notfound; raise_application_error(err_code_02,err_text_02);alter us
23、ers set operate_id=v_operate_id where user_id=v_user_id end Loop end分页面模块的数据库调用: 新闻详细页面的数据库调用:(detail.asp) 复制 index.asp 记录集 recordset1 到 detail.asp 页面。 详细页面沿用主页布局,并且保留公告、积分榜、赛程、射手榜栏目。删除图片显示栏目。在原新闻栏目里,建立 3 行 1 列表格,分别按如下调用数据库: “ width=“160“ 湖南信息学院19height=“160“ / 表 4-6 图片详细页面的数据库调用:(photo.asp) 复制 inde
24、x.asp 记录集 recordset2 到 photo.asp 页面。 详细页面沿用主页布局,并且保留公告、积分榜、赛程、射手榜栏目。删除新闻显示栏目。在原图片栏目里,建立 2 行 1 列表格,分别按如下调用数据库: “ width=“430“ height=“400“ / 网站管理总模块页面实现:(admin.asp) 新建页面,建立 2 行 1 列表格。第一行输入“管理页面”。第二行输入“增加新闻 管理新闻 增加图片 管理图片”。 addnews.asp Manage1.asp Addphoto.asp Manage2.asp5 总结经过 1 多月的努力,毕业设计基本完成了。在毕业设计的
25、实践中,学到很多有用的知识,也积累了不少宝贵的开发经验。比如 SQL 语句的应用等。本设计通过自己的努力。基本满足了新闻信息管理的基本需要,实现了用户使用的方便以及管理员管理的方便,在界面上力求做到简单实用,在操作方面尽量做到满足用户使用的习惯,但由于自己的水平有限和时间的不足,在很多方面还不完善,有些功能没有在全局上把握好,比如一些功能函数可以在一个文件中定义,具体页面需要用到再直接引用,SQL 语句的执行效果也存在效率不高的问题,出现了一些混淆,程序更改,测试时很不好等。在今后的学习和工作当中继续完善此系统,使其功能更加强大,满足用户的更多需求。 湖南信息学院20毕业设计是将自己大学三年所
26、学的知识的一个检验的过程,在这个过程中可以体验到自己去尝试的快乐,也有功能实现不了的困惑,老师,同学的宝贵意见都给了我很多帮助,在此十分感谢他们。通过毕业设计自己动手可以增强实践能力,而且对系统开发有了一个比较清楚的了解,知道了应该怎么样去分析解决问题,收获很多参考文献1鲍儿斯.学习 JavaScript.东南大学出版社。2铁军.WEB 数据库清华大学出版社。3企业级网站开发项目教程(ASP.NET).中国人民大学出版社。4候文彬 .网页设计教程 .清华大学出版社。致谢非常感谢马英英老师、马英英老师在我大学的最后学习阶段 毕业设计阶段给自己的指导,从最初的定题,到资料收集,到写作、修改,到论文定稿,她们给了我耐心的指导和无私的帮助。为了指导我们的毕业论文,她们放弃了自己的休息时间,她们的这种无私奉献的敬业精神令人钦佩,在此我向她们表示我诚挚的谢意。同时,感谢所有任课老师和所有同学在这四年来给自己的指导和帮助,是他们教会了我专业知识,教会了我如何学习,教会了我如何做人。正是由于他们,我才能在各方面取得显著的进步,在此向他们表示我由衷的谢意,并祝所有的老师培养出越来越多的优秀人才,桃李满天下!