《软件工程毕业设计(论文)留言板管理系统.doc》由会员分享,可在线阅读,更多相关《软件工程毕业设计(论文)留言板管理系统.doc(39页珍藏版)》请在三一办公上搜索。
1、LUOYANG NORMAL UNIVERSITY2012届本科毕业设计留言板管理系统院(系)名称信息技术学院专 业 名 称软件工程 学生姓名学号指导教师完 成 时 间2012年5月摘要电子留言板在国内一般称作网络论坛,早期的留言板与一般街头和校园内的公告板性质相同,只不过是通过电脑来传播或获得消息而已。一直到个人计算机开始普及之后,有些人尝试将苹果计算机上的留言板转移到个人计算机上,留言板才开始渐渐普及开来。近些年来,由于留言板爱好者们的努力,留言板的功能得到了很大的扩充。本留言板系统可以使游客无拘无束的发布对版主的信息,而版主则可以对收到的信息进行回复操作,适合不在同一地点的人群进行网上的
2、的交流。本系统具有友好的登录页面,没有用户名的游客也可以在主页面上进行注册,填入合适的注册信息之后就可以得到本留言板系统的认可,成为普通用户。成为用户之后除了可以收到游客对自己的留言并对其进行回复外,还可以对留言进行修改删除操作。用户还可以修改自己的密码等系统信息。关键词:留言板;SSH框架;sql server数据库AbstractElectronic message boards in the country commonly known as online forums, the early message board with general street and campus bul
3、letin boards nature is the same, only to spread through a computer or access to news. Until after the personal computer began to spread, some people try to message boards on the Apple transferred to the personal computer, message boards began gradually gaining in popularity. In recent years, thanks
4、to the efforts of enthusiasts of message boards, the function of the message board has been greatly expanded.This message board allows visitors to freely release information to the moderator, the information received while the moderator can reply to the crowd for not in the same location online exch
5、anges.This system has a friendly login page, there is no user name Visitors can also register on the main page, fill in the appropriate registration information on this message board system can be recognized as a normal user. As a user, in addition to can receive visitors to their message and their
6、reply, the message modify the delete operation. The user can also modify their own passwords and other system information.Keywords: message board;SSH framework;sql server database目 录第1章 绪论11.1 系统开发背景11.2 系统研究目的和意义11.3 可行性分析2第2章 系统需求分析32.2 系统性能要求32.3 数据流图分析3第3章 系统总体设计53.1 系统功能模块分析53.1.1 用户登录注销53.1.2
7、用户注册53.1.3 用户信息的修改和删除53.1.4 用户信息的浏览63.1.5 留言内容的管理编辑63.2 实体E-R图63.3 系统用例图63.4 系统总体设计74.1 开发工具简介84.2 开发框架84.2.1 系统中Struts2的实现84.2.2 系统中Hibernate的实现104.2.3 系统中Spring的实现104.3 数据库设计124.4 用户界面设计134.4.1 登录界面134.4.2 用户注册界面164.4.3 信息查询及显示界面214.4.3 后台管理界面24第5章 软件测试和调试275.1 白盒测试法275.2 黑盒测试法29第6章 工作总结和展望30参考文献3
8、1致 谢32第1章 绪论1.1 系统开发背景 现今是网络时代,信息的交流不再单单是面对面的交流还增加了虚拟网络的交流,由于其方便快捷及其对地域时间等因素的的要求的淡化,Internet上的交流早已占据着一个极其重要的地位。人们可以通过在互联网上收到最新的消息,也可以通过互联网进行信息的交流。而留言板就是大家进行信息交流的其中一个渠道。 留言板是一种在Internet网上开放的信息服务系统,通过该系统用户可以方便的实现信息的交换和文件的共享。本系统主要完成了基于JSP技术的校内论坛的设计和实现,主要实现了客户端和服务器端的动态交互。该系统主要包含:用户信息管理模块;留言内容实现及排版模块;用户权
9、限所对应的功能实现模块;留言发布/回复模块,四大模块。本论文详细描述了留言版系统的结构、功能以及具体设计过程。系统采用了JSP技术以及JavaBeans组件技术和JDBC技术实现。目前,通过留言板系统可随时取得国际最新的软件及信息,也可以通过留言板系统来和别人讨论计算机软件、硬件、Internet、多媒体、程序设计以及医学等等各种有趣的话题,更可以利用留言板系统来刊登一些“征友”、“廉价转让”及“公司产品”等启事,而且这个园地就在你我的身旁。只要您拥有1台计算机、1只调制解调器和1条电话线,就能够进入这个“超时代”的领域,进而去享用它无比的威力!1.2 系统研究目的和意义留言板系统最初是为了给
10、计算机爱好者提供一个互相交流的地方。70年代后期,计算机用户数目很少且用户之间相距很远。因此,留言板系统(当时全世界一共不到一百个站点)提供了一个简单方便的交流方式,用户通过 留言板可以交换软件和信息。到了今天,留言板的用户已经扩展到各行各业,除原先的计算机爱好者们外,商用留言板操作者、环境组织、宗教组织及其它利益团体也加入了这个行列。只要浏览一下世界各地的留言板系统,你就会发现它几乎就象地方电视台一样,花样非常多。它向用户提供了一块公共电子白板,每个用户都可以在上面发布信息或提出看法,早期的留言板由教育机构或研究机构管理,现在多数网站上都建立了自己的留言板系统,供网民通过网络来结交更多的朋友
11、,表达更多的想法。 目前国内的留言板已经十分普遍,可以说是不计其数,其中留言板大致可以分为5类:1校园留言板CERNET建立以来,校园留言板很快地发展了起来,目前很多大学都有了留言板,几乎遍及全国上下。象清华大学、北京大学等等都建立了自己的留言板系统,清华大学的水木清华很受学生和网民们的喜爱。大多数留言板是由各校的网络中心建立的,也有私人性质的留言板。2商业留言言板网站这里主要是进行有关商业的商业宣传,产品推荐等等,目前手机的商业站、电脑的商业站、房地产的商业站比比皆是。3专业留言板是指部委和公司的留言板,它主要用于建立地域性的文件传输和信息发布系统。4情感留言板主要用于交流情感,是许多娱乐网
12、站的首选。5个人留言言的制作者们在自己的个人主页上建设了留言板,用于接受别人的想法,更有利于与好友进行沟通。1.3 可行性分析 当今社会正处在网络时代,信息化大潮席卷全球,网络正以前所未有的速度在我国普及开来。网站以其独特的优势在信息化的过程中占有重要的一席。为了方便信息的交流,在结合JAVA和S.S.H 技术之下开发了这个快捷、界面友好的交流系统,实现了一个功能相对齐全的留言板系统,网友可以自由地提出问题以及帮助他人解决问题,或者交流经验。1技术可行性根据该系统目标来衡量所需的技术是否具备,一般可从硬软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析。考虑到系统实施的可行性,在软
13、件方面选择了如今较流行的MyEclipse工具来进行开发管理平台的设计,使用SQL server 2000数据库存储数据。在硬件方面,则选择空间越大,硬件的配置越高,系统的开发与运行会更流畅。考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。在软件方面,由于MyEclipse和SQL server 2000是两个非常成熟的开发工具,无论在安全性、可用性、可靠性方面都毫无置疑,因此软件方面是可行的。2.时间,设备可行性系统设计与开发工作预计耗时一个月,能够保证按时完成任务。实验设备如:计算机。打印机。3.系统工作量该系统工作量很大,必须保证按进度完成任务。实际工作量预计超过三
14、个月。如包含软件维护及技术论文的整理,制作,工作量将更大。第2章 系统需求分析2.2 系统性能要求1.安全性该系统的安全性主要是防止他人非法进入系统,从而保证了数据的安全性,数据存储的完整性和数据的可靠性。设置三种不同的身份进行登录,即高级用户、普通用户和游客;同时,系统中所有已注册用户的密码使用了MD5加密技术,很大程度上提高了系统的安全性。2.高效性使用此留言板管理系统可以使用户更方便更快速的与版主进行留言。大大的缩短了游客与版主进行交流的时间,方便了游客与版主的交流与联系。 3.便捷性本系统的界面友好,操作方便,能够达到所见即所得的效果,方便用户的使用。2.3 数据流图分析本系统是为了提
15、供给广大用户一个网上交流的平台,所以论坛的流程是以用户为中心进行的。数据流图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。数据流图具有以下两个特性:1.抽象性:表现在它完全舍去了具体的物质,只剩下数据的流动、加工处理与存储。2.概括性:表现在它可以把信息中的各种不同业务处理过程联系起来,形成一个整体。数据流图由以下四种基本元素组成,既外部实体、数据流、处理(功能)、数据存储等,数据流图中所用的符号如图2-1所示。 外部实体 处理 数据流 数据存储图2-1 符号图留言板系统的数据流程图如图2-2所示。用户查看帖子P2F1帖子资料
16、P3回复帖子P1发表帖子P4搜索帖子P5搜索用户F2用户资料P6资料修改(1)(3)(2)(4)(5)(5)(6)(7)(8)(9)(10)(11)(12)(13)图2.6 数据流程图说明:访问信息,用户信息,发表帖子信息,更新帖子信息,搜索信息获取帖子信息,回复信息,搜索用户,更新用户信息,获取用户资料。第3章 系统总体设计系统总体设计需完成的主要功能是概念和逻辑结构设计,其中概念结构设计是将需求分析得到的用户需求抽象为概念模型的过程,它是整个数据库设计的关键。逻辑结构设计的任务是把概念结构设计阶段设计好的基本E-R图转化为与选用DBMS产品所支持的数据模型所符合的逻辑结构。3.1 系统功能
17、模块分析本系统是一套网上交流的留言板软件,根据用户的需要和实际的管理条件,应由用户功能实现,帖子功能实现和后台管理等几个模块所构成,用户可以对一些数据进行查找和修改,并且注册的用户可以对帖子进行特定的操作,而管理员可以对用户和帖子进行相关的管理。论坛系统应该能够在用户通过帐户密码验证登录留言板服务系统后,判断用户级别识别两类不同权限级别的用户。第一类是游客,拥有浏览留言,查询注册用户个体最基本信息的权限;第二类是用户,能够对相应留言进行回复,删除,浏览和编辑。对自己的密码和公告栏内容进行更改;鉴于本系统的性质,系统应该实现以下功能:1.用户功能实现:用户的登录,注册和登录信息的修改。2.留言功
18、能实现:留言的发表,留言的回复,留言的编辑,留言的删除。3.后台管理:用户密码的管理,留言的管理,公告信息的管理。3.1.1 用户登录注销进入登录界面用户可以进行登录,登录进去后不同的用户拥有不同的权限,同时想更换用户时可以注销现有用户。3.1.2 用户注册用户注册页面同时完成了新用户的注册和添加用户信息的功能,因为用户信息不是太多,因此在此系统中我将这两个模块合二为一,显示用户信息时只要把用户密码不显示就可以。新用户可以通过此页面注册一个用户名,然后此用户信息就会自动显示在用户信息中,以供浏览和查询。同时高级管理员可以通过此界面添加一个新的联系人信息。在新用户注册中的密码在后台会进行加密操作
19、,以保证系统的安全性。3.1.3 用户信息的修改和删除普通用户可以进入系统更改界面对用户信息进行相应的修改,如可以改变自己的登录 录密码,还可以对注册信息进行修改。3.1.4 用户信息的浏览所有用户都可以对用户信息进行浏览,显示出现用用户的信息。3.1.5 留言内容的管理编辑留言编辑管理包括:1.游客添加对版主的留言2.版主修改编辑游客对自己的留言3.版主查看留言信息及留言者的信息4.版主可以删除游客的留言3.2 实体E-R图实体之间关系的E-R图如图3-1所示。图3-1 系统E-R图3.3 系统用例图电话簙系统用例图如图3-2所示。访客临时用户浏览留言的帖子发表留言回复帖子修改资料会员搜索管
20、理员会员管理留言管理论坛信息管理图3-2 系统用例图3.4 系统总体设计系统设置了三种身份的登录,包括高级用户、普通用户和游客。其中高级用户只有一个是在程序中直接加进去的不可以通过注册成为高级用户,可以通过注册成为普通用户,游客是只是浏览此系统不对此系统中的任何数据做改动。本系统整体架构采用MVC模式(模型-视图-控制器)。模型(Model):在数据持久层中,模型即为值对象以及数据访问对象。 视图(View):数据持久层中,视图就是持久层同其它层进行数据交换的值对象。控制器(Controller):持久层所需的控制相对简单,因此集成到了控制代理中。本系统结构分为四层从上到下即Web层、动作层(
21、Action层)、事务层(Service层)、持久层(Persistent层),MVC设计模式与四层应用结构的对应关系图如图3-3所示。图3-3 MVC设计模式与四层应用结构的对应关系图第4章 系统详细设计4.1 开发工具简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及在应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, J
22、SF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类:1. JavaEE模型 2. WEB开发工具 3. EJB开发工具 4. 应用程序服务器的连接器5. JavaEE项目部署服务6. 数据库服务7. MyEclipse整合帮助 对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。 简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支
23、持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。经过了MyEclipse 8.5 M1和MyEclipse 8.5 M2两个版本,MyEclipse Enterprise Workbench 8.5 for Eclipse 3.5.2终于在2010年3月28号正式发布了!在官方网站上 MyEclipse 8.5 可以下载了,该版本集成了 Eclipse 3.5.2,提升了团队协作开发、开发周期管理以及 Spring 和 Hibernate 的更好支持。MyEclipse 8.5大大降低了用户的
24、使用难度,操作简单容易上手,因此,用其作为开发工具比较合适。4.2 开发框架本系统主要采用两大框架Struts2+Hibernate。Struts2实现MVC模式,Hibernate实现持久化。4.2.1 系统中Struts2的实现配置Struts框架首先要导入开发包,然后配置web.xml。 1.Struts配置文件中的beans的实现:2.Struts配置文件中的action的实现:4.2.2 系统中Hibernate的实现此系统采用Hibernate框架可自动生成数据库。Hibernate是持久化层的一种实现的实例方式。Hibernate不和特定的业务领域相关,能够把任意一个Java应用
25、与数据库系统连接,它是一种中间件。实现Hibernate首先新建文件hebernate.cfg.xml,在此文件中配置好数据库服务器的用户名密码路径等。再分别创建各个表的xml文件,如创建一个User.hbm.xml文件,将在此文件中创建用户表,配置文件代码如下。Hibernate配置文件中的session-factory的实现:org.hibernate.dialect.SQLServerDialectjdbc:sqlserver:/localhost:1433;databaseName=guestbooksa123456com.microsoft.sqlserver.jdbc.SQLSer
26、verDriverdb4.2.3 系统中Spring的实现Spring是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。1.Spring配置文件中sessionFactory的实现:com/huo/model/Guestbook.hbm.xmlcom/huo/model/Admin.hbm.xmlcom/huo/model/Note.hbm.xmlorg.hibernate.dialect.SQLSer
27、verDialect2.Spring配置文件中admin,guestbook的dao,manager的实现:bean id=guestbookDao class=com.huo.dao.hibernate.GuestbookDaoHibernateabstract=false lazy-init=default autowire=default4.3 数据库设计本系统用Hibernate对数据进行管理,将此系统导入到MyEclipse中只要配置好hibernate.cfg.xml中的URL、username、password及配置DB Browser然后将系统发布到Tomcat上启动Tomca
28、t数据库就可以自动生成。本数据库采用SQL server数据库,SQL server数据库有以下优点:SQL server以来引入了共享SQL和多线索服务器体系结构。这减少了SQL server的资源占用,并增强了SQL server的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。提供了与第三代高级语言的接口软件PRO*系列,能在C,C+等主语言中嵌入SQL语句及过程化
29、(PL/SQL)语句,对数据库中的数据进行操纵。加上它有许多优秀的前台开发工具如 POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端PC 平台的应用程序,并具有良好的移植性。提供了新的分布式数据库能力。可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。基于此故选择了SQL Sever数据库,操作比较方便,可读性较强,能使数据处理更加方便快捷。本系统主要用到了以下3张表。1.用户详细信息表,表示用户的所有信息,如表4-1所示。表4-1 T_ADMIN表2. 留言内容详细信息表,表示留言的所有信息,如留言者,留言时间,留言内容,留言者qq
30、,邮箱等。如表4-2所示。表4-2 T_GUESTBOOK表3. 公告栏内容信息表,显示首页公告栏标题与内容。如表4-3所示。表4-3 T_NOTE表4.4 用户界面设计4.4.1 登录界面1. 系统主界面如图4-8所示。图4-8 系统主界面此界面是本系统的主功能界面,在本界面上集成了本系统的所有功能,点击“登录”可以进行用户登录。点“首页”对当前页面进行刷新。点击“注册新用户”进入注册用户界面,点击“编辑”进入信息编辑修改,点击”删除”把当前留言删除掉,点击“所有留言”进入显示所有留言信息的页面。Index界面前台代码如下:My JSP index.jsp starting pageThis
31、 is my Test page.= 2. 登录界面如图4-9所示。图4-8 系统登陆界面登录界面Action实现主要代码如下:public ActionForward login(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws UnsupportedEncodingException ApplicationContext context = new ClassPathXmlApplicationContext(applicationContext.xml);AdminManager mana = (AdminManagerImpl) context.getBean(adminManager);GuestbookM