




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
装订线安徽工业大学工商学院 毕业设计(论文)说明书摘 要随着计算机技术的快速,当今社会越来越多的人重视网络文化。注重自己的网络虚拟空间,需要有自己的一片天地,去表达自己的想法,分享自己的快乐,由于这个前提,个人空间信息系统应运而生。本系统是一个为适应当前个人迫切需求而设计开发的软件系统,其开发主要包括后台数据库的建立和前端页面开发两个方面。经过分析,本系统使用MYSQL做为其后台数据库,采用连接池技术;Eclipse做为开发工具,系统主要实现的功能包括:文章检索查询管理模块、相册管理模块、用户基本信息管理模块等,完成对个人空间的基本需求。关键字:个人空间,MYSQLAbstractWith computer technology rapidly, more and more people in todays society attention network culture. Pay attention to their own virtual space, to have its own place in the world, to express their ideas, share their happiness, because of this premise, personal spatial information system came into being. The system is a pressing need to adapt to the current individual design and development of software systems, which mainly includes the establishment of database and development of two aspects of the front page. After analysis, the system uses MYSQL as its backend database, the use of connection pool technology; Eclipse as a development tool system is mainly implemented features include: articles search query management module, photo album management module, the user basic information management module, complete the basic needs of personal space.Keyword:personal space, MYSQL 目录1绪论11.1项目开发的背景11.2项目开发的目的与意义11.3论文内容综述22相关开发工具简介22.1概述32.2JAVA语言基本知识32.2.1JAVA语言简介32.2.2JAVA语言的特点32.2.3JSP 基础42.2.4Servlet基础42.2.5JavaBean基础52.3MySQL数据库62.3.1MySQL数据库简介62.3.2MySQL数据库的特性72.4基于B/S的WEB应用体系结构72.4.1传统的两层体系结构72.4.2三层体系结构72.4.3JSP网站开发模式82.5开发平台92.5.1Eclipse简介92.5.2Tomcat简介92.6MVC设计模式93系统分析阶段113.1可行性分析113.1.1经济可行性分析113.1.2技术可行性分析113.1.3法律可行性分析113.1.4操作可行性分析113.2需求分析123.2.1系统功能需求分析123.2.2系统性能需求分析124系统设计阶段134.1系统的流程图144.2总体结构确定144.3数据库的设计155详细设计和编码实现阶段175.1用户登录模块的设计175.2系统前台界面的设计185.3系统后台界面的设计195.4文章检索查询管理模块205.5相册管理模块的设计215.6用户基本信息管理界面设计225.7公告信息管理的设计265.8投票信息管理界面的设计265.9数据库连接的设计266系统测试阶段276.1测试的目的286.2软件测试的方法286.3测试的步骤28结束语28致谢30参考文献31附录 部分源代码47 第 IV 页装订线安徽工业大学工商学院 毕业设计(论文)说明书1 绪论1.1 项目开发的背景当今时代作为青少年都主张自由表达、开放宽容、个性张扬、专业精神。在没有一个属于自己的空间信息之前,人们会经常进出于论坛发表贴子或者通过即时通信软件聊天,来表达自已的想法,可是这些都是零散的和杂乱的。一些空间网页的出现,让人们可以不断的把自己以前的和每天激发的一些想法或者感受整理放在属于自己的空间上面,每次在写文章的时候,可能又会产生新的想法。虽然一些想法一些思考只是皮毛,没有什么深度,但是当下笔去写的时候每次都会对某个小小的问题有了更多的一点点思考,再写文章的时候就感觉到了一种满足感,一种想法得以释放思考得以延伸的满足感。生活中每天的一个小小的事情都会引起人们的思考,甚至是和朋友的聊天中一个小小的火花迸发。督促自己努力、把一时的想法变成观点,争取在生命中的每天里留下点什么,这也是人们写日志的目的之一。这样就能督促自己每一天不要浑浑噩噩,时光流逝无痕无声无息,写日志也是在自己的每一天上留下了一道浅浅的思考和划痕,所以这些展现自己的信息网站得以发展。不仅如此,通过写信息、记录自己的想法可以帮助实现如下这些目(记录生活,在自己的每一天上留下思考的划痕、 整理思路,固化知识,获得更多更好的想法、 分享,将自己的想法、经验与人分享、交流、提高,通过交流产生更多的思维火花,相互提高、交友,互相鼓励,一路同行) 如果说这些网站是一个舞台,那么所有的成员都是其中的舞者,把自己有价值的真实的一面展示在网络世界中,相互交流沟通; 如果这些信息网站仅仅为了写日志,那么它就是一面镜子,镜子中展现的是真实的自己;如果这些信息是一个自由媒体,可以把自身感觉有价值的信息通过这个工具发布,与网友共享。 1.2 项目开发的目的与意义随着中国网民人数的增加,个人空间作为一种新的生活方式、新的工作方式和新的学习方式已经被越来越多的人所接受,并且在改变传统的网络和社会结构。它使交流和沟通更有明确的选择和方向性;单一的思想和群体的智慧结合变得更加有效;个人出版变成人人都可以实现的梦想。空间正在影响和改变着我们的生活。本系统采用MVC模式设计实现了一个简单的信息空间系统。MVC模式极大地提高了系统的灵活性、复用性、开发效率、适应性和可维护性,充分发挥了JSP、Servlet等J2EE组件的特点。从而,使更多的人们通过文字、图片等,尽情展示自我、分享感受、参与交流,美好你我生活。Show you, share me,人人都可以展示,人人都需要网上属于自己的一片空间。现在的个人空间网站的主要特点:首先空间属于个人所有,是自发建立和非正式的建设。空间不需要作网站的专业知识,可以像发邮件一样简单地实现博客网页的呈现。技术的极度简化,包括架构和申请空间网站、编辑、上传和修改内容等。其次任何一个人都可以像申请免费邮件般免费申请自己的空间网站。不需要注册域名的成本,不需要租用服务器空间的成本,不需要许多软件工具的成本。 与个人主页相比较,空间是使用方便的、交互性强。与传统的电子邮件、BBS这两种互联网沟通方式相比,个人空间是一种较严肃的沟通平台。BBS公共匿名性很强,而个人性很弱,因此缺乏约束。电子邮件是多用于个人间的通讯,而个人空间是个人性和公共性的结合。个人空间是个人在网上展示自己、与别人沟通交流的综合平台,它的管理比BBS简单的多。1.3 论文内容综述 本论文主要从以下方面对项目进行了说明:(1) 介绍了相关开发工具以及各开发工具的特点;(2) 系统可行性研究与分析,并做出总体设计框架;(3) 详细设计实现文章检索查询管理、相册管理、用户基本信息管理等功能;(4) 分析并解决实现中的若干技术问题; (5) 完成完整的个人空间信息的设计,完成系统测试;2 相关开发工具简介 2.1 概述此个人空间信息管理系统主要是以JAVA为开发语言,以MYSQL为数据库,用JSP实现的一个完全基于浏览器的系统,以下是本系统开发工具的介绍。2.2 JAVA语言基本知识2.2.1 JAVA语言简介在Java出现以前。Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEN中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力,面SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都想到:噢,这正是我想要的。于是Java成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅。2.2.2 JAVA语言的特点面向对象:其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。 所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java也不例外。现实世界中的对象均有属性和行为,映射到计算机程序上,属性则表示对象的数据,行为表示对象的方法(其作用是处理数据或同外界交互)。所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象是支持封装的手段,是封装的基本单位。Java语言的封装性较强,因为Java无全程变量,无主函数,在Java中绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,Java也提供了相应的对象类型以便与其他对象交互操作。 可移植性:就是在这个系统上作的程序经过一次编译后可以移植到别的系统上解释执行,只要经过简单的粘贴和复制就行了,不影响程序的效果安全性:在 iSeries 服务器上运行的大多数 Java(TM) 程序是应用程序,而不是 applet,所以“砂箱”安全性模型对它们不起限制作用。从安全性的观点看,Java 应用程序所受的安全性限制与 iSeries 服务器上的任何其它程序相同。要在 iSeries 服务器上运行 Java 程序,您必须对集成文件系统中的类文件具有权限。程序一旦启动,它就在该用户权限控制下运行。 您可以使用沿用权限来访问具有运行程序的用户的权限和程序拥有者权限的对象。沿用权限临时地将用户原先无权访问的对象的权限授予用户。2.2.3 JSP 基础JSP即Java Server Pages,是由Sun Microsystem公司于1996年6月推出的新技术,是基于Java Servlet以及整个Java体系的Web开发技术。JSP已经成为开发Web动态网页重要、快速和有效的工具,是全新的网络服务器编程环境。JSP充分利用了Java的强大功能,是一种优秀的服务器端技术。随着Java技术的日益成熟和流行,JSP在网络编程中也变得越来越重要。JSP基于强大的Java语言,具有极强的扩展能力,良好的收缩性,以及与平台无关的开发特性,成为构建动态网站的主流技术之一,JSP有着其他技术所不具备的优势。其优势在于:可以将内容的生成和显示进行分离、生成可重用的组件、采用标识简化页面开发。JSP能提供所有Servlet的功能。2.2.4 Servlet基础Servlet是Java编写的服务器端程序,是由服务器端执行和调用的Java类。Servlet是采用Java技术来实现CGI功能的一种技术,能够像CGI一样动态地扩展Web服务器的功能,并采用请求响应模式提供Web服务。Servlet和CGI一样都是运行在Web服务器上,用来生成Web页面。Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。其工作流程图如图2.1所示。Servlet工作流程:a)客户端发送请求信息至服务器。b)服务器将请求信息发送至Servlet。c)Servlet生成响应内容并将其传给Servlet。响应内容动态生成,通常取决于客户端的请求。图2.1 Servlet工作流程图d)服务器将响应信息返回至客户端2.2.5 JavaBean基础JSP的一大特点就是与JavaBeans的结合,而JSP与JavaBeans结合的一个突出的优点是页面显示和业务逻辑的分离。这可以使团队协作的更好,开发出更高质量的站点。JavaBean是一种可以重用的Java组件,在JSP程序中常用来封装事物逻辑、数据库操作等,可以很好的实现业务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性。事件处理是JavaBeans体系结构的核心之一。通过事件处理机智,可以让一些组件作为事件源,发出可被描述环境或其他组件接受的事件。这样,不同的组件就可在构造工具内组合在一起,组件之间通过事件的传递进行通信,构成一个应用。从概念上讲,事件是一种在“源对象”和“监听对象”之间、某种状态发生变化的传递机智。事件有许多不同的用途,如:鼠标事件、窗口边界改变事件、键盘事件等。在Java和JavaBeans中则是定义了一个一般的、可扩充的事件机制,它能够:1).对事件类型和传递模型的定义和扩充提供一个公共框架,并适合于广泛的应用。2).与Java语言和环境有较高的集成度。事件能描述环境捕获和被激发。能使其他构造工具采取某种技术在设计时直接控制事件,遗迹控制事件源和事件监听者之间的联系。事件本身不依赖于复杂的开发工具。特别的,事件机制还应当:1).能够发现制定的对象类可以生成的事件。2).能够发现制定的对象类可以观察监听到的事件。3).提供一个常规的注册机制,允许动态操纵事件源与事件监听者之间的关系。4).不需要其他的虚拟机和语言即可实现。5).事件源与监听者之间可进行高效的事件传递。6).能完成JavaBean事件模型与相关的其他组件体系结构事件模型的中立映射。JSP和ASP.NET同样是网站开发中常用的开发工具。但是,ASP是微软的产品,其应用只能是在Windows平台上,移植性差,而且以源代码的形式存放在服务器端,安全性差。每次由服务器解释运行,运行效率不高。Jsp页面文件执行时被编译成字节代码,由客户端流览的Java虚拟机解释执行,不再是源代码,因此执行效率和安全性高。将数据库连接的重要信息存放在JavaBean文件后,可以编译成虚拟机才能解释的字节代码,确保了数据库的安全。在ASP技术里,通过Web页面要实现一些特定的功能比较困难,比如基于网页的报表,打印实现起来就比较麻烦。ASP提供的解决方案是自己开发组件,通过在服务器端注册组件,成为独立的可以重复利用的模块供读者调用。因此要求读者需要掌握比较复杂的变成语言的开发技术。在JSP开发技术里,可以通过开发JavaBean文件实现同样的功能,JavaBean不需要注册,只要放置在相应的目录下就可以运行。可以实现ASP的COM组件同样的功能。此外JSP推出主要就是考虑到平台的无关性。JSP代码可以在APACHE、IIS等服务器上执行,支持大部分操作系统。JSP继承JAVA技术的优点:一次运行,处处运行。2.3 MySQL数据库2.3.1 MySQL数据库简介MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。MySQL是一个数据库管理系统:一个数据库是一个结构化的数据集合。它可以是从一个简单的销售表到一个美术馆、或者一个社团网络的庞大的信息集合。MySQL是一个关系数据库管理系统:关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。MySQL是开源的:开源意味着任何人都可以使用和修改该软件,任何人都可以从Internet上下载和使用MySQL而不需要支付任何费用。如果你愿意,你可以研究其源代码,并根据你的需要修改它。MySQL服务器原本就是开发比已存在的数据库更快的用于处理大的数据库的解决方案,并且已经成功用于高苛刻生产环境多年。尽管MySQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。它的连接性、速度和安全性使MySQL非常适合访问在Internet上的数据库。2.3.2 MySQL数据库的特性 1.使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性2.支持AIX、FreeBSD、HP-UX、Linux、MacOS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统 3.为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。 4.支持多线程,充分利用CPU资源 5.优化的SQL查询算法,有效地提高查询速度 6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名 7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径 8.提供用于管理、检查、优化数据库操作的管理工具 9.可以处理拥有上千万条记录的大型数据库MySQL名字的来历MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地应用在Internet上的中小型网站中。2.4 基于B/S的WEB应用体系结构2.4.1 传统的两层体系结构在Web发展的初期,Web应用主要是通过静态页面在Internet上发布信息。用户通过浏览器向服务器发送请求,服务器接收用户端的请求,向客户端浏览器发送所请求的页面。在这种结构下,网站上的页面是静态的,无法根据用户的实际使用情况做动态的变化。网站的信息提供者通过更新服务器上的网页来向用户提供最新的信息。用户和浏览器之间只有有限的交互,而网站和用户之间几乎没有交互。2.4.2 三层体系结构三层体系结构图如图2.2所示。CGI,ASP,PHP等技术的出现,使得开发动态交互式的Web应用得以实现。用户通过浏览器向服务器发送请求,Web服务器接收客户端发送来的请求,对请图2.2 三层体系结构图求进行分析,如果请求是静态页面,那么就将所请求的页面发送到客户端;如果请求的是动态页面,那么就执行此动态页面,并将执行结果发送给客户端。动态页面中的脚本程序可以和数据库服务器进行交互。Web服务器可以根据用户的请求动态更新页面上的信息,Web信息提供者可以通过改变数据库中的数据向用户提供最新信息,而不需要逐个更改页面。用户可以通过这些动态页面向数据库中输入信息,从而增强了用户和服务器之间的交互性。2.4.3 JSP网站开发模式目前,JSP技术已经成为一种受大多数大型企业或中小型企业喜爱的动态网页开发技术。越来越多的技术人员也逐步成为JSP技术的推崇者。JSP技术正是利用了Java的“一次开发,处处使用”的性能,成为了网站开发技术人员的首选技术。当然,JSP技术的最大优势在于能够将页面的表现形式和页面的商业逻辑分开。JSP网站开发技术标准提供了两种开发模式:一种是JSP+JavaBean开发模式;一种是JSP+Servlet+JavaBean开发模式8,9。JSP+JavaBean模型图如图2.3所示。图2.3 JSP+JavaBean模型图在这种模型中,JSP页面独自响应请求并将处理结果返回给客户,所有的数据通过JavaBean来处理,JSP实现页面的显示。此模型常常会导致页面被嵌入大量的脚本语言或者Java代码段,当处理大型业务时,页面程序将变得异常复杂给开发和维护带来困难。JSP+Servlet+JavaBean模型图如图2.4所示。图2.4 JSP+Servlet+JavaBean模型图Servlet技术是一种采用Java技术来实现CGI功能的一种技术。Servlet是运行在Web服务器上,用来生成Web页面。Servlet技术非常适于服务器端的处理和编程。在此种开发模式中,JSP技术用来显示页面,该页面中没有任何的商业处理逻辑,通过Servlet技术来完成大量的事物处理工作。Servlet用来处理事务的请求,充当着一个控制者的角色,并负责向客户发送请求,创建JSP需要的Bean和对象,根据用户的请求行为,决定将哪个JSP页面发送给用户。从上面两种开发模式来说:第二种模式要好些,更适合于团队开发,速度相对较慢,但是可维护性高。2.5 开发平台2.5.1 Eclipse简介Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成。2.5.2 Tomcat简介 如今,基于Web的应用越来越多,传统的Html已经满足不了如今的需求。因此需要一个交互式的Web,于是便诞生了各种Web语言。如Asp,Jsp,Php等。当然,这些语言与传统的语言有着密切的联系,如Php基于C和C+语言,Jsp基于Java语言。Tomcat即是一个Jsp和Servlet的运行平台。Tomcat是一个免费的开源的Serlvet容器,是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。2.6 MVC设计模式MVC模式的基本形式图如图2.5所示。图2.5 MVC模式的基本形式图MVC(Model-View-Controller)模式并不是J2EE行业人士标新立异的。MVC的核心就是要做到三级甚至多级的松散耦合,MVC模式将系统分为三个部分,分别是数据模型、视图和控制器,并定义了这三个部分之间实现通信的一种模式,使每个部分不必卷入到其他部分的状态表示和方法实现的细节中去。每个部分有自己的数据管理规则,各个对象之间的通信只能使用自己定义的一个受限连接集合进行。保持这种分离性通常是面向对象编程和设计要追求的目标,让各个对象只需专注于自己的事务。模型部分代表了商业数据的访问及修改数据的操作。当数据发生改变时,要负责通知视图部分,并且提供视图查询状态的能力。另外,还向控制部分提供应用功能。视图部分以自己的方式显示模型的内容。访问模型的数据,并且当模型的数据发生变化时更新模型的显示。视图还把从用户那里得到的信息传给控制部分。控制部分定义了应用的行为。分发用户请求和选择表现视图,还负责解释用户输入,进而调用模型的功能。在Web应用中,用户输入包括对Web级资源的HTTP、GET和POST请求。控制部分根据用户交互和模型的状态选择要显示的视图。一个应用程序一般为相关的功能选择一个控制部分。3 系统分析阶段3.1 可行性分析可行性分析是在进行初步调查后所进行的对系统开发必要性和可能性的研究,所以也称为可行性研究。信息系统也应从技术可行性,经济可行性、法律可行性和操作可行性四方面来论证。通过长时间的观察与实践,我认为信息空间的可行性如下:3.1.1 经济可行性分析 作为空间这样的商业性质较小的场所,其经济成分比重相对较少,主要是支出的费用:其中包括设备购置费、软件开发费用、管理和维护费等。由于经济的快速发展,计算机已经越来越普及,该系统使用普通的计算机就可以对其管理,所以成本低。该系统采用的是java和mysql进行开发的,所以在系统开发上需要的费用低,对硬件的要求低,最后,对于该系统如何运行,只需要对使用的人员进行简单的培训即可、综上所述,该系统在经济上是可行的。3.1.2 技术可行性分析技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作。 本系统采用的开发工具是JAVA和mysql,首先JAVA不受平台的限制,可以使用于不同的操作系统,所以用JAVA开发是方便而又安全的,用此开发工具开发出的系统在现有的操作系统上运行时性能稳定,给该软件的使用者提供了安全保障。 其次,JAVA是面向对象的,而面向对象编程的最大优点是可以通过软件的重用来提高软件的生产率,所以用JAVA作为编程语言进行开发,软件的开发效率高,大大缩小了软件的开发时间。 此系统开发所使用的开发工具保障了系统的开发效率和系统的安全性,因此,此系统的开发在技术上是可行的。3.1.3 法律可行性分析 当前项目的开发没有违反国家相关法律,并且没有对他人的知识产权构成威胁,因此在法律上是可行的。3.1.4 操作可行性分析项目的开发完全按照客户方的要求来定制,完成所需要的每个功能,模块简单但功能完善,并且操作界面比较友好、操作方便,代码完全按照代码规范来编写,可扩充性强。同时,结合最流行的基于浏览器的数据管理模式,建议采用基于组件技术的B/S(brower/server)系统结构。3.2 需求分析3.2.1 系统功能需求分析在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的个人空间网站,为网络用户提供进行在线分享、交流的网络平台。通过个人空间网站可以结交更多的朋友,表达更多的想法,它随时可以发布文章。具体的要求如下:1).会员可以简单的添加和删除文章;2).独立于具体的数据库平台。对于与数据库交互的部分充分考虑兼容性;3).容易在原先基础上进行二次开发;4).中间基础平台的无型性。尽量采用开放的标准技术,达到跨平台运行的效果;为了达到以上的开发目的,个人空间网站应遵循一定的设计和开发与原则:1).模块接口定义清晰;2).基础类库和接口设计合理,尽量建立可以扩展的接口和抽象类;3).数据库操作使用标准SQL语句,如果一定要使用有差别的SQL语句,则尽量集中在一起,定义一个工具类,以减少将来维护和移植的难度;4).采用开放的标准和工具等;3.2.2 系统性能需求分析主要特性:1).多样性: 个人空间网站在设计时必须遵循的一个重要原则,就是以用户为系统设计的中心。网络的发展大大降低了信息咨询的成本,用户面临更多的选择,所以,个人空间网站除了降低成本以外,还必须在皮肤,功能的多样性上下工夫,才能够得到用户的认可。具体来说,应用系统应能实现用户特定的需求,操作界面友好、方便,功能设置符合用户的习惯和要求。2).易维护:管理员能够简单方便地管理系统,定义新的应用,并对系统进行日常维护;随着个人空间网站信息的变更或增加、数据规模的增大,系统升级、维护应易于操作;各子系统、功能模块的设计应具有良好的灵活性,保证在个人空间网站系统建设过程中后期系统功能的实现不影响前期已投入使用的系统功能。3).安全性:系统应充分考虑信息、设备、运行和管理的安全性,建立完善的多层次的安全保障体系,保证用户的个人信息等资料的数据安全。4).可扩展: 个人空间网站的用户从事着各种行业,他们的需求各不相同,系统在设计时应充分考虑到用户需求不断变化的需要,降低系统在扩展新的业务功能时的复杂度。4 系统设计阶段4.1 系统的流程图前台: 后台:4.2 总体结构确定1. 博客注册登录管理本模块实现新用户注册,登录功能。其中,注册新用户时会对用户输入的注册信息进行有效的验证,包括基本数据格式的有效性,以及逻辑有效性,例如:用户名被占用时给出提示。注册成功登录时会对会员输入的信息进行提示,如用户名、密码错误。同时在注册时还用到了验证码技术,防止恶意注册!2. 会员文章查询显示管理本模块用于帮助网络用户快速定位到自己关注的页面及对应的文章信息中。在本模块中提供了最新文章推荐。3. 发表文章管理该模块实现了会员发表新文章的功能。会员发表文章时,可以选择文章所属类别,此外只有是会员才能发表文章,对此进行了严格的身份验证。4. 发表及显示评论管理该模块实现了与文章相关的评论管理。只有注册成本站用户才能对文章进行发表评论。5. 上传相片管理该模块实现了会员上传相片的功能,会员可以上传自己喜欢的相片,对相片的格式进行了有效的限制、相片的大小限制等,会员可以对相片进行删除,只有注册本站的用户才能对相片进行查看。6.会员发布公告管理本模块用于会员发布自己最近的动态,抒发最近的心情,让本站注册的用户进行查看。7.会员发布投票管理该模块实现会员对当下的实事进行点评,本站可以通过查看投票的内容进行查看,并投上自己宝贵的一票8.会员添加朋友管理会员可以添加自己喜欢的朋友信息,让你随时掌握你的朋友信息。可以对你的朋友信息进行修改删除。4.3 数据库的设计一个设计良好的数据库,可以使系统的实现变得非常的简单。同时,也可以使系统的执行速度变得很快。反之,一个设计混乱的数据库,不仅增加了吸引的管理实现过程,同时在系统的执行过程中,使得检索变得很慢,降低效率。所以数据库的设计是一个系统设计很重要的步骤。根据系统功能设计要求和模块划分,本站的数据库主要有用户信息、文章信息、管理员信息、照片信息、文章类型信息、评论信息、投票信息、朋友圈视图。数据库的设计通常是以一个已经存在的数据库管理系统为基础的,常用的数据库管理系统有Access、SQL Server、Oracle、MySQL等。根据用户需求和系统分析,本系统采用MySQL数据库管理系统。1) 管理员信息表如图3.5:表3.5 管理员表2) 文章信息表如图3.6:图3.6 文章表3) 文章类型信息表如图3.7所示:图3.7 文章类型视图4) 评论信息表如图3.8所示图3.8 评论表5) 朋友信息表如图3.9所示图3.9 朋友表6) 相册信息表如图3.10所示图3.10 相册表7) 评论信息表如图3.11所示图3.11 评论表8) 投票信息表如图3.12所示图3.12 投票表5 详细设计和编码实现阶段5.1 用户登录模块的设计 用户登录模块是系统进入的第一个模块,在用户输入用户名和密码后,系统需要连接数据库进行用户名和密码的比对工作,当用户名和密码正确后,用户就可以进入系统的主界面。 在设计的时候给用户提供友好的提示信息,当用户名或密码为空的时候提示用户输入该信息,当用户的信息全部错误的时候用对话框提示用户信息错误。此模块的界面如图5.1所示。 图5.1 登录界面登录对话框的代码如下: ConsumerForm consumerForm = consumerDao.getConsumerForm(account);if (consumerForm = null) request.setAttribute(information, 您输入的用户名不存在,请重新输入!); else if (!consumerForm.getPassword().equals(request.getParameter(password) request.setAttribute(information, 您输入的登录密码有误,请重新输入!); else request.setAttribute(form, consumerForm);5.2 系统前台界面的设计 用户登录后首先进入系统的主界面,在系统的主界面上用户可以选择所要管理的信息,主界面上列出了本系统所提供的管理功能,供用户区选择。主界面只是提供各个功能模块的入口。 系统的前台主界面如图5.2所示: 图5.2 系统前台主界面采用链接的形式,在每一种功能的入口处均以点击该功能的形式来实现的,同时刷新页面,响应所点击的内容。 主界面的代码如下:for(int host=0;hostconsumerlist.size();host+) com.wy.form.ConsumerForm consumerHostForm=(com.wy.form.ConsumerForm)consumerlist.get(host); for(int articleI=0;articleI100)articleContent=articleContent.substring(0,100)+.;5.3 系统后台界面的设计会员登录后首先进入系统的主界面,然后点击“进入后台”,进入会员的后台管理,在系统的后台界面上用户可以选择所要管理的信息,后台界面上列出了本系统会员所提供的管理功能,供会员选择。后台界面只是提供各个功能模块的入口。系统的后台主界面如图5.3所示:图5.3 系统后台主界面采用链接的形式,在每一种功能的入口处均以点击该功能的形式来实现的,同时刷新页面,响应所点击的内容。模块说明:该模块只有该网站的会员才可以进入,也就是该会员属于高级,通过该模块的功能,会员可以添加、删除所要添加的东西,普通会员则没有权限。所以当登录的用户是普通用户的时候,则在主页上没有连接后台的连接。5.4 文章检索查询管理模块会员进入前台主页面,通过点击“文章”,可以看到该会员发表的文章,每页显示5个,保证页面的完整性,在通过“阅读全文”来查看该文章的内容,可以看到该文章的阅读量,别人关于这个文章的回复(回复内容、回复人) 此模块的界面如图5.4所示。图5.4 会员文章管理界面模块说明:主要功能是用户在浏览系统时查看发表的文章列表及文章的详细内容,包括文章的题目、发表时间、该文章的浏览次数等,并可以针对文章发表进行回复,它给用户提供展示文笔的平台,增加会员与用户、用户与用户之间的交流,能够使系统内的气氛更加活跃,内容更加丰富,前台文章查询模块主要包括,所有文章浏览、文章分类浏览、文章内容详细浏览及文章回复功能。5.5 相册管理模块的设计会员和普通用户可以通过该模块,彼此更加的了解,会员可以上传相片来展示自己,可以让普通用户充分享有视觉享受。此模块的界面如图5.5所示图5.5.1 相册信息管理界面 图5.5.2 相册信息添加管理界面模块说明:该模块的主要功能是实现对相片文件的上传、查询和删除操作,可以使会员随时更新个人系统内的相册文件,便于对相册的管理、方便快捷,能够使前台内容吸引更多的浏览者。5.6 用户基本信息管理界面设计用户基本信息管理是信息系统的主要内容,在此部分中需要对会员的基本信息进行管理。通过系统后台的用户设置,使得会员能够很快的定位或者查出该系统中的所有用户基本信息。用户可以通过注册成员该系统的常用用户,通过该用户的账号,可以查看该系统会员写的文章、上传的相册等,并且可以对会员的文章进行回复,加以评论。图5.6用户基本信息管理的主界面同样在此部分,给管理人员提供应有的操作(添加,修改,删除及查看员工的家庭成员)。而添加,修改和删除按钮提供给具有相应权限的用户,所以对不具有相应权限的用户应该置灰。检查是否具有权限的代码如下:if (curUser.GetUser_type() != 1)GetDlgItem(IDC_ADD_BUTTON)-EnableWindow(FALSE);GetDlgItem(IDC_MODI_BUTTON)-EnableWindow(FALSE);GetDlgItem(IDC_DEL_BUTTON)-EnableWindow(FALSE);GetDlgItem(IDC_TRANSFER_BUTTON)-EnableWindow(FALSE);GetDlgItem(IDC_EXP_BUTTON)-EnableWindow(FALSE);图5.6.1 用户信息注册界面图5.6.2 用户信息查询界面 图5.6.3 会员添加好友管理界面 图5.6.4 会员查询好友管理界面 图5.6.5 会员信息管理界面模块说明:通过注册成为用户,填写相应的信息,完善个人资料,便于会员对该系统的用户进行查看和管理,确保当前系统的稳定性。会员可以通过该模块添加关注的好友信息,对好友进行管理,修改好友的信息等,时刻关注好友的动态,更新好友的状态。会员也通过该页面及时的修改个人的信息。5.7 公告信息管理的设计此模系统块用于展现会员的状态、心情,由于添加公告要分不同的天和时间,所以在此模块设计时,应该添加了时间控制,来记录公告的发布的准确时间。并且为了检索的方便,在此模块上添加了修改的操作,用来修改当前的公告。图5.7 会员公告管理主界面时间控制的设计:主要通过JAVA函数来实现。主要的代码设计如下:public String currentlyTime() Date date = new Date();DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL);return dateFormat.format(date);5.8 投票信息管理界面的设计投票信息管理的设计与公告管理的设计基本一致,唯一不同的地方时他们写入数据库中的记录以及记录所写入的表不同,且投票信息管理没有时间的功能。5.9 数据库连接的设计数据库的连接是本系统设计的主要内容,数据库是数据存储和获取的地方,所以很重要,如果数据的连接出现了异常,则系统就失去它的作用。本系统采用连接池的技术,所谓的连接池的原理是:在内部对象池中维护一定数量的数据库连接,并对外暴露数据库连接获取和返回方法。如: 外部使用者可通过getConnection 方法获取连接,使用完毕后再通过relea
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 废玻璃混凝土火后残余性能及TRC加固机理研究
- 基于深度学习的桥梁故障预测诊断研究
- 健康教案:变色龙主题教学设计
- 金融系统核心业务流程架构
- 痔疮的护理查房
- 脑出血康复健康指导
- 颈腰椎病健康讲座课件
- 妇科护理知识年度总结
- 幼儿园家长工作案例培训
- 《网页设计与制作》课件-第4Fireworks综合应用
- 2025年广东高考政治试卷真题答案详解讲评(课件)
- 卡口及道路交通智能监控系统方案设计
- 2025年家庭照护师职业资格考试试题及答案
- 呼吸机相关性肺炎的预防和护理
- 2025年绥化市中考化学试题卷(含答案解析)
- 门诊口腔院感基础知识培训
- 论咏叹调《妈妈不在》的形象刻画与唱段处理
- 危重病人观察和护理要点
- 砌体工程培训课件
- GB/T 45719-2025半导体器件金属氧化物半导体(MOS)晶体管的热载流子试验
- 2025-2030中国医药商业行业盈利态势与投资潜力分析报告
评论
0/150
提交评论