软件构件库管理系统 毕业论文.doc

上传人:小小飞 文档编号:3973420 上传时间:2019-10-11 格式:DOC 页数:91 大小:2.95MB
返回 下载 相关 举报
软件构件库管理系统 毕业论文.doc_第1页
第1页 / 共91页
软件构件库管理系统 毕业论文.doc_第2页
第2页 / 共91页
软件构件库管理系统 毕业论文.doc_第3页
第3页 / 共91页
软件构件库管理系统 毕业论文.doc_第4页
第4页 / 共91页
软件构件库管理系统 毕业论文.doc_第5页
第5页 / 共91页
点击查看更多>>
资源描述

《软件构件库管理系统 毕业论文.doc》由会员分享,可在线阅读,更多相关《软件构件库管理系统 毕业论文.doc(91页珍藏版)》请在三一文库上搜索。

1、软件构件库管理系统摘 要目前,基于构件的软件开发是软件产业中的热点,它成为解决重复开发的问题,提高生产效率和质量的现实可行的途径。当软件构件的数量达到一定规模时,采用构件库管理系统对其进行组织和管理是十分必要的,构件库管理系统的组织和管理水平直接决定着构件复用效率。本文系统的介绍了构件库管理系统的开发过程,完成了对构件的发布、查询、修改以及下载功能,还有对用户管理和对构件的评论管理等功能。采用的技术是基于JAVA语言的WEB开发技术,使用Struts框架和Hibernate框架组合,数据库是Microsoft SQLServer 2000关键词 JAVA语言;软件构件;Struts框架; Hi

2、bernate框架;Microsoft SQLServer2000Software Component Library Management SystemAbstractAt present, the component-based software development in the software industry is hot, it developed to solve the problem of duplication, improve production efficiency and quality of the realistic way. When the number

3、 of components to achieve a certain scale, a component library management system and its management is very necessary, component library management system for the organization and management directly determines the efficiency of component reuse. This paper introduces component library management sys

4、tem development process, completed a component of the release, query, modify and download capabilities, and management and user comments on the component management. The technology used is based on the WEB JAVA language development technology, the use of framework and HIBERNATE STRUTS framework comp

5、osition database is Microsoft SQL Server 2000Keywords JAVA; Software Component; STRUTS Framework;HIBERNATE Framework; Microsoft SQL Server 2000目 录摘 要IAbstractII1 绪论11.1 立题背景、目的及意义11.2 软件构件库管理系统的发展情况21.2.1 国外研究动态21.2.2 国内研究动态32 系统开发环境42.1 系统服务器环境要求42.1.1 对硬件的要求42.1.2 对软件的要求42.2 系统客户端环境要求42.2.1 对硬件的要求

6、42.2.2 对软件的要求42.3 开发工具简介52.3.1 Struts框架介绍52.3.2 Hibernate对象关系映射框架介绍52.3.3 SQL Server 2000 介绍62.3.4 系统的开发平台73 需求分析及可行性研究分析93.1 需求分析93.1.1 功能需求93.1.2 数据需求113.2 系统开发可行性分析143.2.1 经济可行性153.2.2 市场可行性153.2.3 技术可行性163.2.4 时间可行性164 总体设计184.1 系统的开发设计思想184.2 系统功能设计194.2.1 系统的功能模块划分194.2.2 系统的类图204.3 数据库设计215 具

7、体实现245.1 查询构件及发表评论255.1.1 查询构件255.1.2 发表评论275.2 用户管理模块实现295.2.1 注册295.2.2 登录305.2.3 忘记密码325.2.4 修改密码335.2.5 修改个人资料345.2.6 发布构件365.2.7 查询我的构件395.2.8 查询构件相应评论415.2.9 删除构件425.3 管理员管理模块实现435.3.1 超级管理员管理模块445.3.2 构件管理员管理模块475.3.3 用户管理员管理模块495.3.4 评论管理员管理模块49结论51致 谢52参考文献53附录1 英文原文及译文55中文译文55英文原文58附录2 程序源

8、代63V 1 绪论1.1 立题背景、目的及意义目前,基于构件的软件开发是软件产业中的热点,它成为解决重复开发的问题,提高生产效率和质量的现实可行的途径。当构件的数量达到一定规模时,采用构件库管理系统对其进行组织和管理是十分必要的,构件库管理系统的组织和管理水平直接决定着构件复用效率。软件复用是在软件开发中避免重复劳动的解决方案。通过软件复用,可以提高软件开发的效率和质量。近十几年来,面向对象技术出现并逐步成为主流技术,为软件复用提供了基本的技术支持。软件复用研究重新成为热点,被视为解决软件危机,提高软件生产效率和质量的现实可行的途径。当前软件构件技术被视为实现成功复用的关键因素之一。软件构件(

9、software component)是可复用的软件组成成份,可被用来构造其他软件。它可以是被封装的对象类、类树、一些功能模块、软件框架(framework)、软件构架(或体系结构 Architectural)、文档、分析件、设计模式(Pattern)等。构件分为构件类和构件实例,通过给出构件类的参数,生成实例,通过实例的组装和控制来构造相应的应用软件。软件构件库管理系统的目的,就是对软件构件的存储、分类、检索和管理,为基于构件开发提供了全面支持。软件工程师可以快速准确地找到需要的构件,同时发布自己的构件,以达资源共享。1.2 软件构件库管理系统的发展情况1.2.1 国外研究动态1968年NA

10、TO软件工程会议,Mcllroy在提交会议的论文大量生产的软件构件中,提出了“软件组装生产线”的思想。从那以后,采用构件技术实现软件复用,采用“搭积木”的方式生产软件,成为软件开发人员长期的梦想。经过这么多年的努力,开发人员提出了基于构件的软件开发(CBSD:Component-Based Software Development)技术,并且工业界中一些主要的软件公司和产业联盟纷纷提出了一些软件构件的建议标准和技术规范。目前,主流的软件构件技术标准有三种:微软公司的构件对象模型(COM),对象管理组织(OMG)的公共对象的请求代理系统结构(CORBA)和太阳微软系统公司的EJB(Enterpr

11、ise Java Bean)。它们为应用软件的开发提供了可移植性、异构性的实现环境和健壮平台,结束了面向对象中的开发语言混乱的局面,解决软件复用在通信、互操作等环境异构的瓶颈问题。在基于构件的软件开发技术中,软件构件库是管理软件构件及促进软件复用的核心机制,有效地对现有构件进行组织和管理,使构件的使用者可以高效而准确地发现满足其需要的可复用构件。软件构件化在发达国家已普及,美国军方与政府已经建立了CARDS、ASSET和DARS等多个大型构件库系统,还有上万个商业软件构件(Cots)、近千个专业构件制作组织和一批商业构件库运作机构,形成了几百亿美元的构件市场。1.2.2 国内研究动态2002年

12、7月,国务院47号文将构件库列为影响软件产业的重大关键性软件。2004年4月,科技部、发改委、商务部、信息产业部、国家标准化管理委员会在“国科发高字”124号文中,把发展“构件库”写进了2005年“加强软件企业技术创新”的目标中。在基于Internet的构件库管理系统、可扩展的软件建模系统等方面取得较大进展,软件开发平台已经形成了系列化软件。构件库系统完成了公共和企业两级构件库管理系统的研发,公共构件库已经在北京、上海、广州、沈阳、长沙、郑州、西安等8个地区部署并对外使用,支持了各地软件园区和863软件专业孵化器的软件构件库建设。2 系统开发环境2.1 系统服务器环境要求2.1.1 对硬件的要

13、求服务器硬盘空间:数据库空间 360M (DB300MLOG 60M) 构件实体空间由用户需求决定 内存:不小于 512M 推荐使用高性能的工作站,并且推荐配备磁盘阵列2.1.2 对软件的要求Microsoft Windows 2000 Server操作系统或更高版本Microsoft SQL Server 2000数据库或更高版本Tomcat5.0 Web 服务器或更高版本2.2 系统客户端环境要求2.2.1 对硬件的要求客户机:Intel586或更高性能的微机 内存:不小于128M2.2.2 对软件的要求Microsoft IE 5.0或更高版本的Web浏览器2.3 开发工具简介2.3.1

14、 Struts框架介绍Struts框架是Apache开源软件联盟(www.apache.org)的一个开源项目Jakarta Struts Framework。Struts框架继承了MVC设计模式的特性,遵守了J2EE的Servlet、JSP等技术规范,并且根据J2EE的特点做了相应的变化和扩展,是J2EE体系架构的一种轻量级实现。作为一款优秀的Java Web应用程序的开发框架,Struts框架凭借其清晰性、灵活性,成为当前最为广泛应用的轻量级Java Web 开发框架。Struts的工作的原理如图2-1所示。图2-1 Struts的工作原理2.3.2 Hibernate对象关系映射框架介绍

15、Hibernate框架是开放源代码的对象关系映射工具(Object-Relational Mapping),是一款基于Java环境的优秀的对象持久化开发框架。它根据O/R(对象/关系)映射技术思想,对JDBC进行了轻量级封装,使开发人员可以使用一种面向对象的方式来操纵和管理关系数据库,所以从技术本质上来说该框架是一种提供面向对象的数据库服务中间件。Hibernate框架位于应用程序的业务化和持久化层,在运行时的体系结构如图2-2所示。图2-2 Hibernate核心接口的层次架构关系Hibernate的核心接口一共有5个,分别为:Session、Session Factory、Transact

16、ion、Query和Configuration。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。2.3.3 SQL Server 2000 介绍Microsoft SQL Server 2000 数据库在分析服务、数据转化服务、数据仓库等方面引入了大量新特性。它为Web标准提供了强劲的支持,并为系统管理和调整提供了很多有力的工具。对于FoxPro、Access等数据库而言,SQL Server是一个功能完备的正规数据库管理系统。SQL Server2000继承了数据库软件设计引擎方面的优势,已经成为新一代网络应用程序的最佳数据库和分析解决方案之一。作为Microsoft.NET

17、 Enterprise Servers的核心组件,它将减少电子商务、在线商务和数据仓储应用程序推向市场时间,并对需要的环境提供可靠的支持。SQL Server2000对XML和HTTP提供充分的支持;提供分割装载和确保时间的特性;提供先进的管理和协调机制,可以自动管理线和任务,降低总体开销。另外,SQL Server2000充分利用了Windows 2000的功能,包括支持活动目录服务,最多支持32个处理器和64GB的内存。它还包括支持开发引擎、标准的SQL语言、扩展的特性等功能,这些是一些大型数据库系统才具备的特性。而存储过程、触发器等特性,也是个人数据库所没有的。总的来说,SQL Serv

18、er2000简单易用,功能全,很适合做开发使用。2.3.4 系统的开发平台根据前面介绍可以看到Hibenate架构只具备数据持久化设计能力,而Struts架构则在模型设计方面能力薄弱,所以将二者结合起来使用,共同搭建系统结构实现Model-View-Contral模型设计,可以达到二者优势互补,从而使系统设计具备低耦合性以及较高的可维护性和可扩展性。本系统就是采用这个思想来开发的,用Struts框架实现视图和控制设计,用Hibernate实现模型设计。在具体的设计过程中,采用“简单工厂设计模式”,将二者完整地结合起来,使系统符合到了“低耦合、高内聚”的程序设计要求,这样程序模块清晰,容易理解,

19、具有很高的复用价值。下面是用图来描述本系统的体系结构如图2-3所示。图2-3 系统体系结构图3 需求分析及可行性研究分析基于构件的软件开发技术,在我国有了初步发展,国家已经在北京、上海、广州、沈阳、长沙、郑州、西安等8个地区建立公共软件构件库并对外使用。构件库系统通过对可复用构件的分类、管理、存储和检索,为面向复用和基于复用的软件开发过程提供全面的支持。 本文所设计的软件构件库管理系统包括如下功能:用户管理、构件发布、构件查询、构件下载等。支持构件的使用者可以高效而准确地发现满足其需要的可复用构件,从而提高构件的复用效率。知识点:l Struts+Hibernate框架的使用l SQL Ser

20、ver2000数据库设计l 构件的分类l 构件的存储l 构件的查询l Office Visio画图软件的应用3.1 需求分析3.1.1 功能需求根据分析可以确定系统有两类参与者普通用户和管理员,管理员分为用户管理员、构件管理员、评论管理员。这两个参与者的具体操作如下。1. 用户的操作l 用户登录、用户注册、查询构件、发表评论。如图3-1所示。图3-1普通用户的基本操作用例图l 发表构件、修改个人基本信息、修改密码、删除所发布的构件、查询评论。如图3-2所示。图3-2用户的操作用例图2. 管理员的操作l 管理员对管理员和用户的管理:查询用户、删除用户、添加管理员、删除管理员、修改管理员权限。如图

21、3-3所示。图3-3管理员管理用户的用例图l 管理员对构件或评论管理:查询构件、删除构件、查询评论、删除评论。如图3-4所示。图3-4管理员管理构件或评论的用例图3.1.2 数据需求软件构件库系统的开发目的就是提供给用户重用构件的平台,即用户可以发布自己的构件,并且可以查找、下载自己所需的构件,以推动软件构件化的发展。由此,系统涉及到的实体有:普通用户、管理员、构件、评论。实体之间有如下联系:l 一个用户可以发布多个构件l 一个构件可以有多个评论l 系统设一个超级管理员,主要是管理系统中其他管理员l 不同的管理员有不同的权限l 用户管理员可以管理所有的用户l 构件管理员可以管理所有的构件以及构

22、件的评论l 用户可以管理自己的构件l 用户可以查询自己构件的评论经过分析画出E-R图,如图3-6所示。图3-6实体关系图根据实际情况的分析,设计出如下实体及其属性。l 普通用户属性:用户ID(personID)、用户名(userName)、密码(userPassword)、真实姓名(trueName)、找回密码问题(userQues)、问题答案(userAns)、性别(sex)、Email(email)、地址(adress)。如图3-7所示。图3-7普通用户的属性l 管理员属性:管理员编号(adminID)、管理员名字(adminName)、密码(adminPassword)、管理员权限(po

23、wer)。如图3-8所示。图3-8 管理员的属性l 构件信息属性:构件ID(componentID)、构件名称(componentName)、构件大小(componentSize)、构件描述(componentDescribe)、当前版本(currentEdition)、封装类型(encapulationType)、运行环境(runEnvironment)、构件来源(componentURL)(提供下载连接)、功能类型(functionType)、国际化支持(nationSustain)、开发商名字(empolderName)、开发商主页(empolderBlog)。如图3-9所示。图3-9构

24、件属性l 构件评论属性:评论ID(commentID)、构件ID(componentID)、评论内容(commentContent)、评论时间(commentDate)。如图3-10所示。图3-10 构件评论属性3.2 系统开发可行性分析可行性分析是在用户的要求和系统调研的基础上进行的,对新系统的开发从经济、市场、技术、时间等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。3.2.1 经济可行性经济可行性分析中最重要的内容之一是成本效益分析。对于一个基于基本计算机系统的研制项目要在经济方面评价其是否合理,成本效益分析要估

25、计出研制开发的花费并与收益(包括有形的可以用货币计数的及无形的利益)衡量比较。目前已有两台PC机。无须购买新的硬件设备。只要支付软件开发和维护费用,以及人员培训费用。系统投入运行后,会及大提高数据的管理效率。3.2.2 市场可行性要在软件系统的开发过程中有效的实现复用,必须要求复用达到一定的规模,必须有大量的可供开发人员选择的可复用构件。构件的数量越多,找到合适构件的可能性也就越大,应用系统的复用程度也就越高。但是随着构件数量的增加,如何有效的对这些构件进行组织和管理成为了构件复用技术成败的关键。如果大量的构件没有被有效的组织和管理起来,那么要在一堆没有任何结构,散乱的构件中,找到满足特定需求

26、的构件是一件十分困难的事情。因此,当构件的数量达到一定规模时,采用构件库对其进行组织和管理是十分必要的,构件库的组织和管理水平直接决定着构件复用的效率。构件库是用于存储,检索,浏览和管理可复用构件的基础设施,构件库的组织和管理形式要有利于构件的存储和检索,其最关键的目标是支持构件的使用者可以高效而准确的发现满足其需要的可复用构件。 3.2.3 技术可行性就目前使用的开发技术来说系统的功能目标能够达到;利用现有的技术在规定的期限内开发工作能够完成。从目前市场上比较流行的Web开发来看,对于比较简单的中小型网站的开发STRUTS框架和HIBERBATE框架组合是一种比较好的解决方案。它为用户提供了

27、Windows所一贯坚持的界面友好、操作简单无疑是在实际应用中较为成功的用户界面,简洁明了的数据接口与SQL语句的结合支持对数据库进行更为复杂的操作。结合本项目的实际情况来看,但是其业务流程和数据流程还是可以分析清楚的,经系统分析可以设计出符合实际需求、易于理解、易于操作、易于维护的后台数据库和前台应用程序。3.2.4 时间可行性根据学院及导师对毕业设计的要求,通过具体安排系统开发时间如下,并要求自己在每一阶段提前完成具体任务。开发进度安排:前期工作:2007/10/22至2007/10/30 确定具体课题题目2007/10/31至2008/01/16 完成课题的调查研究、可行性分析、设计目标

28、、需要解决的关键问题、资料收集。2008/01/18至2008/01/22 完成需求分析2008/01/23至2008/02/01完成总体功能设计后期工作: 2008/02/18至2008/02/28 系统的编码设计、系统性能测试分析 2008/02/28至2008/04/08 完成毕业设计论文的书写 2008/04/12 论文答辩4 总体设计4.1 系统的开发设计思想 系统是以浏览器/服务器模式开发的管理系统,系统具备如下功能。l 系统允许用户注册、登录、查询构件以及对构件发表评论l 用户可以发布构件、对自己注册信息管理,对自己所发布的构件进行管理l 系统中有不同的管理员,包括超级管理员、用

29、户管理员、构件管理员、评论管理员l 系统管理员对数据库中所有的构件管理、对构件的评论、对用户管理,对管理员的管理下面是系统的具体部署图,如图4-1所示。图4-1系统部署示意图4.2 系统功能设计4.2.1 系统的功能模块划分根据对系统的实际需求分析,再结合自己的实际开发能力,总结出系统的总体设计,明确地划分出了系统的功能模块,该系统主要有用户管理员、管理员管理、构件管理、评论管理这大模块组成。各个模块的具体实现功能用方框图来描述如图4-2所示。软件构件库管理系统用户登录用户注册用户管理构件管理评论管理管理员管理修改密码查询所有用户删除用户添加管理员删除管理员用户信息修改修改权限查询构件发布构件

30、删除构件查询评论删除评论修改密码按权限查询按用户名查询查询所有模糊查询查询管理员发表评论按封装语言查询按用户查询按功能类型查询查询所有按构件查询图4-2系统的总的功能模块图4.2.2 系统的类图通过对系统进行模块划分,明确系统的主要功能。再进一步分析,确定系统中的类,以及类与类之间的关系,下面是系统中涉及的类l 普通用户(UserDao) 主要方法:登录(login)、注册用户(registerPerson)、修改密码(updatePasswor)、修改用户(updatePerson)、删除用户(deletePerson)、查询所有用户(queryGetAll)。l 管理员(AdminDao)

31、主要方法:登录(login)、添加管理员(addAdmin)、修改密码(updatePassword)、修改权限(updatePower)、删除管理员(deleteAdmin)、按用户名查询(queryByName)、按权限查询(queryByPower)、查询所有(getAll)。l 构件(ComponentDao)主要方法:发布构件(addComponent)、按功能类型查询(getByFunctionType)、按封装语言查询(getBy EncapulationLanguage)、模糊查询(getByIndexName)、按用户ID查询(getByPersonID)、查询所有(quer

32、yGetAll)、删除构件(deleteComponent)。l 评论(CommentDao)主要方法:发表评论(issueComment)、删除评论(deleteComment)、按构件ID查询(getByComponentID)、查询所有(getAll)。下面是用图的形式来描述系统中的类,包括类的属性和方法,以及类与类的关系如图4-3所示。图4-3系统类图以及之间的关系4.3 数据库设计根据数据库的逻辑分析,在Microsoft SQL Server 2000数据库建立数据库表和数据字段。有E-R图分析可映射成如下4张表。1. 用户信息表表名Data_user,存放用户信息,物理结构如表4

33、-1所示。表4-1用户信息表Data_user字段名类型是否为主键是否空说明personIDInt是否用户IDuserNamechar否否用户名userPasswordchar否否密码trueNamechar否是真实姓名userQueschargo否是找回密码问题userAnschar否是问题答案Sexchar否是性别Emailchar否是电子邮件Addressvarchar否是联系地址2. 管理员信息表表名Data_admin,存放管理员信息,物理结构如表4-2所示。表4-2管理员信息表Data_admin字段名类型是否为主键 是否空说明adminIDint是否管理员IDadminNamec

34、har是否管理员用户名adminPasswordchar否否密码Powerchar否否权限3.构件信息表表名Data_component,存放构件信息,物理结构如表4-3所示。表4-3构件信息表Data_component字段名类型是否为主键是否空说明componentIDInt是否构件主键personIDInt否否发布人componentNameVarchar否否构件名字currentEditionChar否否当前版本encapulationLanguageChar否否封装语言componentDescribNtext否否构件描述runEnvironmentVarchar否否运行环境comp

35、onentURLVarchar否否构件来源functionTypeVarchar否否功能类型componentSizeFloat否否构件大小续表4-3构件信息表Data_componentnationSustainChar否否国际化支持empolderNameVarchar否是开发商名字empolderBlogChar否是开发商主页addDateDate否是发布日期4.评论信息表表名Data_comment,存放评论内容,物理结构如表4-4所示。表4-4评论信息表Data_comment字段名类型是否为主是否空说明commentIDint是否评论主键componentIDint否否构件IDco

36、mmentContentvarchar否否评论内容commentDatedatetime否否发表评论时间5 具体实现软件构件库管理系统主要有用户管理、管理员管理、构件管理、评论管理,这四大功能模块。这一章主要来介绍系统的各个模块的详细实现。软件构件库管理系统的主界面如图5-1所示。图5-1 系统首页示意图软件构件库管理系统可以有以下使用方式:l 注册任何人在使用本系统之前(构件查询和发表评论除外),必须注册,申请成为本系统的合法用户。l 用户登录维护个人信息/构件发布/构件查询/评论查询注销 用户使用用户名和密码登录到本系统后,可以进行个人信息维护、构件发布或管理自己的构件、评论查询的工作,完

37、成之后注销用户身份。如想再使用本系统(构件查询除外),必须再次登录系统。l 构件查询发表评论任何人员都可以不进行系统登录而直接查询构件,并且还可以发表评论。l 系统管理员登录维护系统管理员/维护用户/维护构件/维护评论注销系统管理员登录系统后,管理系统管理员信息、管理用户信息、管理构件信息、管理构件评论,完成之后注销用户身份,如果还想进行系统管理功能,必须再次登录。5.1 查询构件及发表评论5.1.1 查询构件查询构件用户有两类:一类是未登录的用户,另一类是登录用户。未登录用户可以查看构件、发表评论,登录用户也可以查看构件、发表评论并且还可以管理自己的构件。查询部分的主要功能,是帮助用户根据自

38、己的需要查询、浏览、选取和提取构件库中的构件。系统为用户提供了3种查询构件的方式,分别是模糊查询、按封装语言查询、按功能类型查询。尽量保证用户快速、准确地查找到自己所需要的构件。例如:用户采用模糊查询,可以在模糊查询文本框中输入关键字“JSP”,系统将关键字与数据库存储的构件名称匹配,只要构件名称中含有“JSP”字样,就将构件显示出来。下图是查询后的显示结果如图5-2所示。图5-2 显示查询构件结果示意图在此页面中,将显示出构件编号、构件名称、发布日期,这些构件信息。查询构件的操作顺序是:首先,用户进入查询构件页面(在首页也可以查询),其次,用户可以选择任何一种查询方式来查询构件,输入或选择查

39、询条件,最后,点击相应的查询按钮。系统将显示查询结果,若是没有查询到构件,将显示为空。下面是查询构件的流程图如图5-3所示。 进入查询构件界面选择查询方式结 束输入功能类型显示查询结果按封装语言查询按功能类型模糊查询查 询输入关键字输入封装语言图5-3 查询构件流程图查询完毕之后,用户可以点击界面右侧的“查看构件详细”按钮,可以看到构件的详细,包括构件描述、当前版本、封装语言、运行环境、构件来源、功能类型、构件大小、国际化支持、开发商名称、开发商主页。用户可以根据开发商提供的来源地址下载构件,或者根据开发商提供的开发商主页地址,联系开发商,取得构件。5.1.2 发表评论任何用户都可以对构件发表

40、评论,其中评论主题、内容不能为空,系统还要求填写验证码。该页面的显示效果如图5-4所示。图5-4 发表评论界面示意图用户填写完评论信息之后,点击“提交”,系统将检验评论主题、评论内容是否为空,若不为空,将评论信息保存到数据库中,若是为空,系统会显示出错误信息,只能重新发表。下面是发表评论的流程图,如图5-5所示。填写主题、内容、验证码检验是否为空保存并发布结 束开 始YN图5-5 发表评论流程图5.2 用户管理模块实现5.2.1 注册任何人在使用系统之前(除构件查询除外),必须先注册成为系统会员,点击主界面上的“用户注册”链接,可进入到“用户注册页面”如图5-6所示。 图5-6 用户注册界面示

41、意图 在此界面上,需要填写的个人基本信息,包括用户名、密码、性别、找回密码问题、问题答案、真实姓名、联系地址、电子邮件,系统在注册时还要求用户正确填写验证码。用户填写完所有的信息之后,点击“注册”按钮,系统首先对所填信息进行检验,以确保信息合法,然后再把信息存储到数据库中。下面是用户注册的程序的流程图,如图5-7所示。YNYNYNYN保存用户信息用户名是否存在验证码对否验证两次输入密码是否一致基本信息是否空填写基本信息、验证码开 始结束图5-7 用户注册流程图5.2.2 登录用户要向发布构件必须先登录系统,系统登录界面如图5-8所示。 图5-8 用户登录界面示意图在此界面上,用户需要填写自己的

42、用户名和密码,以及系统需要的验证码,填写完整之后,点击“用户登录”按钮,系统先检测输入的信息是否合法,如果合法,再去数据库中查找用户是否存在,程序流程图如图5-9所示。开 始验证码正确?输入用户名、密码、验证码结束登录成功并进入主界面N用户名、密码合法吗YYNY图5-9 用户登录流程图经过系统查找之后,如果用户存在,将显示登录成功界面如图5-10所示。图5-10 用户登录成功界面示意图5.2.3 忘记密码由于某种原因,用户忘记了密码,系统为用户提供了找回密码的功能。如果用户忘记了密码,可以点击界面上的“忘记密码”链接进入找回密码界面,如图5-11所示。图5-11 找回密码界面示意图在此界面上,

43、用户根据用户名、注册时填写的找回密码问题以及问题答案这3项信息向系统询问。系统首先找到对应的用户,再将现在填写的找回密码问题以及问题答案与数据库中的这些信息匹配,若是匹配成功,系统会让用户重新设置密码;若是匹配不成功,系统将给出错误提示。下面是找回密码功能模块的流程图,如图5-12所示。开 始输入用户名结 束密码、确认密码是否一致保存密码YN输入新密码、确认密码答案是否正确NY显示找回密码问题输入问题答案图5-12 找回密码流程图5.2.4 修改密码用户登录成功之后,可以进入“我的帐户”,在此界面上有修改密码链接,用户点击“修改密码”,进入修改密码页面,如图5-13所示。图5-13 修改密码示

44、意图 用户填写原密码、新密码、新密码确认,可以随时修改密码。下面是修改密码的流程图,如图5-14所示。结 束YN保 存输入原密码、新密码、确认密码原密码正确吗新密码、确认密码是否一致YN开 始图5-14 修改密码流程图5.2.5 修改个人资料同样,在“我的帐户”页面里,系统也给出了修改个人资料链接,用户点击左侧的“用户信息”在右侧可看到个人资料,如图5-15所示。在这里,用户点击“用户信息”时,系统按照用户ID查询用户信息,从数据库中查询出来信息并显示给用户,用户可以修改以前的个人信息。修改完之后,用户点击“修改”按钮,系统开始检查用户重新修改的信息,其中“用户名”不能为空,若是为空,系统将提示错误信息。检查完之后,系统将新的信息保存到数据库中。图5-15 修改个人资料示意图 用户可以修改个人资料,下面是修改个人资料的流程图如图5-16所示。输入的信息合法吗开始获得用户ID查询个人信息结束显示个人信息保存NY修改个人信息图5-16 修改个人资料流程图5.2.6 发布构件用户如果希望别人使用自己的构件,首先必须在网上发布这些构件相关信息。用户必须登录系统,才能发布构件,在“我的帐户”页面中,系统给出了发

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1