1、安徽工业大学工商学院 毕业设计(论文)说明书第 I 页装订线摘 要随着计算机技术的快速,当今社会越来越多的人重视网络文化。注重自己的网络虚拟空间,需要有自己的一片天地,去表达自己的想法,分享自己的快乐,由于这个前提,个人空间信息系统应运而生。本系统是一个为适应当前个人迫切需求而设计开发的软件系统,其开发主要包括后台数据库的建立和前端页面开发两个方面。经过分析,本系统使用 MYSQL 做为其后台数据库,采用连接池技术;Eclipse 做为开发工具,系统主要实现的功能包括:文章检索查询管理模块、相册管理模块、用户基本信息管理模块等,完成对个人空间的基本需求。关键字:个人空间,MYSQLAbstra
2、ct安徽工业大学工商学院 毕业设计(论文)说明书第 II 页装订线With 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
3、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
4、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:perso
5、nal space, MYSQL 目录1 绪论 .11.1 项目开发的背景 .1安徽工业大学工商学院 毕业设计(论文)说明书第 III 页装订线1.2 项目开发的目的与意义 .11.3 论文内容综述 .22 相关开发工具简介 .22.1 概述 .32.2 JAVA 语言基本知识 .32.2.1 JAVA 语言简介 .32.2.2 JAVA 语言的特点 .32.2.3 JSP 基础 .42.2.4 Servlet 基础 42.2.5 JavaBean 基础 52.3 MySQL 数据库 62.3.1 MySQL 数据库简介 62.3.2 MySQL 数据库的特性 72.4 基于 B/S 的 WE
6、B 应用体系结构 72.4.1 传统的两层体系结构 .72.4.2 三层体系结构 .72.4.3 JSP 网站开发模式 82.5 开发平台 .92.5.1 Eclipse 简介 92.5.2 Tomcat 简介 .92.6 MVC 设计模式 .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 总体结构确定
7、 .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安徽工业大学工商学院 毕业设计(论文)说明书第 IV 页装订线致谢 .30参考文献 .31附
8、录 部分源代码 .47安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 1 页装订线11 绪论1.1 项目开发的背景当今时代作为青少年都主张自由表达、开放宽容、个性张扬、专业精神。在没有一个属于自己的空间信息之前,人们会经常进出于论坛发表贴子或者通过即时通信软件聊天,来表达自已的想法,可是这些都是零散的和杂乱的。一些空间网页的出现,让人们可以不断的把自己以前的和每天激发的一些想法或者感受整理放在属于自己的空间上面,每次在写文章的时候,可能又会产生新的想法。虽然一些想法一些思考只是皮毛,没有什么深度,但是当下笔去写的时候每次都会对某个小小的问题有了更多的一点点思考,再写文章的时候就感
9、觉到了一种满足感,一种想法得以释放思考得以延伸的满足感。生活中每天的一个小小的事情都会引起人们的思考,甚至是和朋友的聊天中一个小小的火花迸发。督促自己努力、把一时的想法变成观点,争取在生命中的每天里留下点什么,这也是人们写日志的目的之一。这样就能督促自己每一天不要浑浑噩噩,时光流逝无痕无声无息,写日志也是在自己的每一天上留下了一道浅浅的思考和划痕,所以这些展现自己的信息网站得以发展。不仅如此,通过写信息、记录自己的想法可以帮助实现如下这些目(记录生活,在自己的每一天上留下思考的划痕、 整理思路,固化知识,获得更多更好的想法、 分享,将自己的想法、经验与人分享、交流、提高,通过交流产生更多的思维
10、火花,相互提高、交友,互相鼓励,一路同行) 如果说这些网站是一个舞台,那么所有的成员都是其中的舞者,把自己有价值的真实的一面展示在网络世界中,相互交流沟通; 如果这些信息网站仅仅为了写日志,那么它就是一面镜子,镜子中展现的是真实的自己;如果这些信息是一个自由媒体,可以把自身感觉有价值的信息通过这个工具发布,与网友共享。 1.2 项目开发的目的与意义随着中国网民人数的增加,个人空间作为一种新的生活方式、新的工作方式和新的学习方式已经被越来越多的人所接受,并且在改变传统的网络和社会结构。它使交流和沟通更有明确的选择和方向性;单一的思想和群体的智慧结合变得更加有效;个人出版变成人人都可以实现的梦想。
11、空间正在影响和改变着我们的生活。本系统采用 MVC 模式设计实现了一个简单的信息空间系统。MVC 模式极大地提高了系统的灵活性、复用性、开发效率、适应性和可维护性,充分发挥了JSP、Servlet 等 J2EE 组件的特点。从而,使更多的人们通过文字、图片等,尽情展示自我、分享感受、参与交流,美好你我生活。Show you, share me,人人都可以展示,人人都需要网上属于自己的一片空间。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 2 页装订线2现在的个人空间网站的主要特点:首先空间属于个人所有,是自发建立和非正式的建设。空间不需要作网站的专业知识,可以像发邮件一样简单地
12、实现博客网页的呈现。技术的极度简化,包括架构和申请空间网站、编辑、上传和修改内容等。其次任何一个人都可以像申请免费邮件般免费申请自己的空间网站。不需要注册域名的成本,不需要租用服务器空间的成本,不需要许多软件工具的成本。 与个人主页相比较,空间是使用方便的、交互性强。与传统的电子邮件、BBS这两种互联网沟通方式相比,个人空间是一种较严肃的沟通平台。BBS 公共匿名性很强,而个人性很弱,因此缺乏约束。电子邮件是多用于个人间的通讯,而个人空间是个人性和公共性的结合。个人空间是个人在网上展示自己、与别人沟通交流的综合平台,它的管理比 BBS 简单的多。1.3 论文内容综述本论文主要从以下方面对项目进
13、行了说明:(1) 介绍了相关开发工具以及各开发工具的特点;(2) 系统可行性研究与分析,并做出总体设计框架;(3) 详细设计实现 文章检索查询管理、相册管理、用户基本信息管理等功能;(4) 分析并解决实现中的若干技术问题; (5) 完成完整的个人空间信息的设计,完成系统测试;安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 3 页装订线32 相关开发工具简介 2.1 概述此个人空间信息管理系统主要是以 JAVA 为开发语言,以 MYSQL 为数据库,用JSP 实现的一个完全基于浏览器的系统,以下是本系统开发工具的介绍。2.2 JAVA 语言基本知识2.2.1 JAVA 语言简介在
14、Java 出现以前。Internet 上的信息内容都是一些乏味死板的 HTML 文档。这对于那些迷恋于 WEB 浏览的人们来说简直不可容忍。他们迫切希望能在 WEN 中看到一些交互式的内容,开发人员也极希望能够在 WEB 上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力,面 SUN 的工程师敏锐地察觉到了这一点,从 1994 年起,他们开始将 OAK 技术应用于 WEB 上,并且开发出了 HotJava 的第一个版本。当 SUN 公司 1995 年正式以 Java 这个名字推出的时候,几乎所有的WEB 开发人员都
15、想到:噢,这正是我想要的。于是 Java 成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅。2.2.2 JAVA 语言的特点面向对象:其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+ 数据;面向对象编程语言为:程序=对象+ 消息。 所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java 也不例外。现实世界中的对象均有属性和行为
16、,映射到计算机程序上,属性则表示对象的数据,行为表示对象的方法(其作用是处理数据或同外界交互)。所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象是支持封装的手段,是封装的基本单位。Java 语言的封装性较强,因为 Java 无全程变量,无主函数,在 Java 中绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,Java 也提供了相应的对象类型以便与其他对象交互操作。 安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 4 页装订线4可移植性:就是在这个系统上作的程序经过一次编译后可以移植到别的系统上解释执行,只要经过简单
17、的粘贴和复制就行了,不影响程序的效果安全性:在 iSeries 服务器上运行的大多数 Java(TM) 程序是应用程序,而不是 applet,所以“砂箱” 安全性模型对它们不起限制作用。从安全性的观点看,Java 应用程序所受的安全性限制与 iSeries 服务器上的任何其它程序相同。要在 iSeries 服务器上运行 Java 程序,您必须对集成文件系统中的类文件具有权限。程序一旦启动,它就在该用户权限控制下运行。 您可以使用沿用权限来访问具有运行程序的用户的权限和程序拥有者权限的对象。沿用权限临时地将用户原先无权访问的对象的权限授予用户。2.2.3 JSP 基础JSP 即 Java Ser
18、ver Pages,是由 Sun Microsystem 公司于 1996 年 6 月推出的新技术,是基于 Java Servlet 以及整个 Java 体系的 Web 开发技术。JSP 已经成为开发 Web 动态网页重要、快速和有效的工具,是全新的网络服务器编程环境。JSP充分利用了 Java 的强大功能,是一种优秀的服务器端技术。随着 Java 技术的日益成熟和流行,JSP 在网络编程中也变得越来越重要。JSP 基于强大的 Java 语言,具有极强的扩展能力,良好的收缩性,以及与平台无关的开发特性,成为构建动态网站的主流技术之一,JSP 有着其他技术所不具备的优势。其优势在于:可以将内容的
19、生成和显示进行分离、生成可重用的组件、采用标识简化页面开发。JSP 能提供所有 Servlet 的功能。2.2.4 Servlet 基础Servlet 是 Java 编写的服务器端程序,是由服务器端执行和调用的 Java 类。Servlet 是采用 Java 技术来实现 CGI 功能的一种技术,能够像 CGI 一样动态地扩展Web 服务器的功能,并采用请求响应模式提供 Web 服务。Servlet 和 CGI 一样都是运行在 Web 服务器上,用来生成 Web 页面。Servlet 的主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。其工作流程图如图 2.1 所示。Servlet 工
20、作流程:a)客户端发送请求信息至服务器。b)服务器将请求信息发送至 Servlet。c)Servlet 生成响应内容并将其传给 Servlet。响应内容动态生成,通常取决于客户端的请求。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 5 页装订线5W e b C l i e n tH T T P S e r v l e t r e q u e s tH T T P S e r v l e t r e s p o n s eW e b C o m p o n e n tDateBaseW e b S e r v e r图 2.1 Servlet 工作流程图d)服务器将响应信息返回至
21、客户端2.2.5 JavaBean 基础JSP 的一大特点就是与 JavaBeans 的结合,而 JSP 与 JavaBeans 结合的一个突出的优点是页面显示和业务逻辑的分离。这可以使团队协作的更好,开发出更高质量的站点。JavaBean 是一种可以重用的 Java 组件,在 JSP 程序中常用来封装事物逻辑、数据库操作等,可以很好的实现业务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性。事件处理是 JavaBeans 体系结构的核心之一。通过事件处理机智,可以让一些组件作为事件源,发出可被描述环境或其他组件接受的事件。这样,不同的组件就可在构造工具内组合在一起,组件之间通过事件的传
22、递进行通信,构成一个应用。从概念上讲,事件是一种在“源对象”和“监听对象”之间、某种状态发生变化的传递机智。事件有许多不同的用途,如:鼠标事件、窗口边界改变事件、键盘事件等。在 Java 和 JavaBeans 中则是定义了一个一般的、可扩充的事件机制,它能够:1).对事件类型和传递模型的定义和扩充提供一个公共框架,并适合于广泛的应用。2).与 Java 语言和环境有较高的集成度。事件能描述环境捕获和被激发。能使其他构造工具采取某种技术在设计时直接控制事件,遗迹控制事件源和事件监听者之间的联系。事件本身不依赖于复杂的开发工具。特别的,事件机制还应当:1).能够发现制定的对象类可以生成的事件。2
23、).能够发现制定的对象类可以观察监听到的事件。3).提供一个常规的注册机制,允许动态操纵事件源与事件监听者之间的关系。4).不需要其他的虚拟机和语言即可实现。5).事件源与监听者之间可进行高效的事件传递。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 6 页装订线66).能完成 JavaBean 事件模型与相关的其他组件体系结构事件模型的中立映射。JSP 和 ASP.NET 同样是网站开发中常用的开发工具。但是,ASP 是微软的产品,其应用只能是在 Windows 平台上,移植性差,而且以源代码的形式存放在服务器端,安全性差。每次由服务器解释运行,运行效率不高。Jsp 页面文件执
24、行时被编译成字节代码,由客户端流览的 Java 虚拟机解释执行,不再是源代码,因此执行效率和安全性高。将数据库连接的重要信息存放在 JavaBean 文件后,可以编译成虚拟机才能解释的字节代码,确保了数据库的安全。在 ASP 技术里,通过 Web 页面要实现一些特定的功能比较困难,比如基于网页的报表,打印实现起来就比较麻烦。ASP 提供的解决方案是自己开发组件,通过在服务器端注册组件,成为独立的可以重复利用的模块供读者调用。因此要求读者需要掌握比较复杂的变成语言的开发技术。在 JSP 开发技术里,可以通过开发JavaBean 文件实现同样的功能,JavaBean 不需要注册,只要放置在相应的目
25、录下就可以运行。可以实现 ASP 的 COM 组件同样的功能。此外 JSP 推出主要就是考虑到平台的无关性。JSP 代码可以在 APACHE、IIS 等服务器上执行,支持大部分操作系统。JSP 继承 JAVA 技术的优点:一次运行,处处运行。2.3 MySQL 数据库2.3.1MySQL 数据库简介MySQL 是一个快速的、多线程、多用户和健壮的 SQL 数据库服务器。MySQL 服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。 MySQL 是一个数据库管理系统:一个数据库是一个结构化的数据集合。它可以是从一个简单的销售表到一个美术
26、馆、或者一个社团网络的庞大的信息集合。MySQL 是一个关系数据库管理系统:关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。MySQL 是开源的:开源意味着任何人都可以使用和修改该软件,任何人都可以从 Internet 上下载和使用 MySQL 而不需要支付任何费用。如果你愿意,你可以研究其源代码,并根据你的需要修改它。MySQL 服务器原本就是开发比已存在的数据库更快的用于处理大的数据库的解决方案,并且已经成功用于高苛刻生产环境多年。尽管 MySQL 仍在开发中,但它已经提供一个丰富和极其有用的功能集。它的连接性、速度和安全性使 M
27、ySQL 非常适合访问在 Internet 上的数据库。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 7 页装订线72.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
28、 资源5.优化的 SQL 查询算法,有效地提高查询速度6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS 等都可以用作数据表名和数据列名7.提供 TCP/IP、ODBC 和 JDBC 等多种数据库连接途径8.提供用于管理、检查、优化数据库操作的管理工具9.可以处理拥有上千万条记录的大型数据库MySQL 名字的来历 MySQL 是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB 公司,在 2008 年 1 月 16 号被 Sun 公司收购。MySQL 被
29、广泛地应用在Internet 上的中小型网站中。2.4 基于 B/S 的 WEB 应用体系结构2.4.1 传统的两层体系结构在 Web 发展的初期,Web 应用主要是通过静态页面在 Internet 上发布信息。用户通过浏览器向服务器发送请求,服务器接收用户端的请求,向客户端浏览器发送所请求的页面。在这种结构下,网站上的页面是静态的,无法根据用户的实际使用情况做动态的变化。网站的信息提供者通过更新服务器上的网页来向用户提供最新的信息。用户和浏览器之间只有有限的交互,而网站和用户之间几乎没有交互。2.4.2 三层体系结构三层体系结构图如图 2.2 所示。CGI,ASP,PHP 等技术的出现,使得
30、开发动态交互式的 Web 应用得以实现。用户通过浏览器向服务器发送请求,Web 服务器接收客户端发送来的请求,对请安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 8 页装订线8浏览器 W e b 服务器请求响应数据库图 2.2 三层体系结构图求进行分析,如果请求是静态页面,那么就将所请求的页面发送到客户端;如果请求的是动态页面,那么就执行此动态页面,并将执行结果发送给客户端。动态页面中的脚本程序可以和数据库服务器进行交互。Web 服务器可以根据用户的请求动态更新页面上的信息,Web 信息提供者可以通过改变数据库中的数据向用户提供最新信息,而不需要逐个更改页面。用户可以通过这些动态
31、页面向数据库中输入信息,从而增强了用户和服务器之间的交互性。2.4.3 JSP 网站开发模式目前,JSP 技术已经成为一种受大多数大型企业或中小型企业喜爱的动态网页开发技术。越来越多的技术人员也逐步成为 JSP 技术的推崇者。JSP 技术正是利用了 Java 的“一次开发,处处使用”的性能,成为了网站开发技术人员的首选技术。当然,JSP 技术的最大优势在于能够将页面的表现形式和页面的商业逻辑分开。JSP 网站开发技术标准提供了两种开发模式:一种是 JSP+JavaBean 开发模式;一种是 JSP+Servlet+JavaBean 开发模式8,9。JSP+JavaBean 模型图如图 2.3
32、所示。浏览器J S P J a v a B e a n D a t a B a s e图 2.3 JSP+JavaBean 模型图在这种模型中,JSP 页面独自响应请求并将处理结果返回给客户,所有的数据通过 JavaBean 来处理,JSP 实现页面的显示。此模型常常会导致页面被嵌入大量的脚本语言或者 Java 代码段,当处理大型业务时,页面程序将变得异常复杂给开发和维护带来困难。JSP+Servlet+JavaBean 模型图如图 2.4 所示。浏览器S e r v l e tJ S PJ a v a B e a n D a t a B a s e图 2.4 JSP+Servlet+Java
33、Bean 模型图安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 9 页装订线9Servlet 技术是一种采用 Java 技术来实现 CGI 功能的一种技术。Servlet 是运行在 Web 服务器上,用来生成 Web 页面。Servlet 技术非常适于服务器端的处理和编程。在此种开发模式中,JSP 技术用来显示页面,该页面中没有任何的商业处理逻辑,通过 Servlet 技术来完成大量的事物处理工作。Servlet 用来处理事务的请求,充当着一个控制者的角色,并负责向客户发送请求,创建 JSP 需要的 Bean 和对象,根据用户的请求行为,决定将哪个 JSP 页面发送给用户。从上面
34、两种开发模式来说:第二种模式要好些,更适合于团队开发,速度相对较慢,但是可维护性高。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 的应用越来
35、越多,传统的 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 所示。安徽工业大学工商学院 毕业设计(论文)
36、说明书共 56 页 第 10 页装订线10用户控制器视图模型输入显示图 2.5 MVC 模式的基本形式图MVC(Model-View-Controller)模式并不是 J2EE 行业人士标新立异的。MVC 的核心就是要做到三级甚至多级的松散耦合,MVC 模式将系统分为三个部分,分别是数据模型、视图和控制器,并定义了这三个部分之间实现通信的一种模式,使每个部分不必卷入到其他部分的状态表示和方法实现的细节中去。每个部分有自己的数据管理规则,各个对象之间的通信只能使用自己定义的一个受限连接集合进行。保持这种分离性通常是面向对象编程和设计要追求的目标,让各个对象只需专注于自己的事务。模型部分代表了商业
37、数据的访问及修改数据的操作。当数据发生改变时,要负责通知视图部分,并且提供视图查询状态的能力。另外,还向控制部分提供应用功能。视图部分以自己的方式显示模型的内容。访问模型的数据,并且当模型的数据发生变化时更新模型的显示。视图还把从用户那里得到的信息传给控制部分。控制部分定义了应用的行为。分发用户请求和选择表现视图,还负责解释用户输入,进而调用模型的功能。在 Web 应用中,用户输入包括对 Web 级资源的HTTP、GET 和 POST 请求。控制部分根据用户交互和模型的状态选择要显示的视图。一个应用程序一般为相关的功能选择一个控制部分。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页
38、第 11 页装订线113 系统分析阶段3.1 可行性分析可行性分析是在进行初步调查后所进行的对系统开发必要性和可能性的研究,所以也称为可行性研究。信息系统也应从技术可行性,经济可行性、法律可行性和操作可行性四方面来论证。通过长时间的观察与实践,我认为信息空间的可行性如下:3.1.1 经济可行性分析作为空间这样的商业性质较小的场所,其经济成分比重相对较少,主要是支出的费用:其中包括设备购置费、软件开发费用、管理和维护费等。由于经济的快速发展,计算机已经越来越普及,该系统使用普通的计算机就可以对其管理,所以成本低。该系统采用的是 java 和 mysql 进行开发的,所以在系统开发上需要的费用低,
39、对硬件的要求低,最后,对于该系统如何运行,只需要对使用的人员进行简单的培训即可、综上所述,该系统在经济上是可行的。3.1.2 技术可行性分析技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作。本系统采用的开发工具是 JAVA 和 mysql,首先 JAVA 不受平台的限制,可以使用于不同的操作系统,所以用 JAVA 开发是方便而又安全的,用此开发工具开发出的系统在现有的操作系统上运行时性能稳定,给该软件的使用者提供了安全保障。其次,JAVA 是面向对象的,而面向对象编程的最大优点是可以通过软件的重用来提高软件的生产率,所以用 JAVA 作为编程语言进行开发,软件的开发效率高,大大缩小了
40、软件的开发时间。此系统开发所使用的开发工具保障了系统的开发效率和系统的安全性,因此,此系统的开发在技术上是可行的。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 12 页装订线123.1.3 法律可行性分析当前项目的开发没有违反国家相关法律,并且没有对他人的知识产权构成威胁,因此在法律上是可行的。3.1.4 操作可行性分析项目的开发完全按照客户方的要求来定制,完成所需要的每个功能,模块简单但功能完善,并且操作界面比较友好、操作方便,代码完全按照代码规范来编写,可扩充性强。同时,结合最流行的基于浏览器的数据管理模式,建议采用基于组件技术的 B/S(brower/server)系统结
41、构。3.2 需求分析3.2.1 系统功能需求分析在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的个人空间网站,为网络用户提供进行在线分享、交流的网络平台。通过个人空间网站可以结交更多的朋友,表达更多的想法,它随时可以发布文章。具体的要求如下:1).会员可以简单的添加和删除文章;2).独立于具体的数据库平台。对于与数据库交互的部分充分考虑兼容性;3).容易在原先基础上进行二次开发;4).中间基础平台的无型性。尽量采用开放的标准技术,达到跨平台运行的效果;为了达到以上的开发目的,个人空间网站应遵循一定的设
42、计和开发与原则:1).模块接口定义清晰;2).基础类库和接口设计合理,尽量建立可以扩展的接口和抽象类;3).数据库操作使用标准 SQL 语句,如果一定要使用有差别的 SQL 语句,则尽量集中在一起,定义一个工具类,以减少将来维护和移植的难度;4).采用开放的标准和工具等;3.2.2 系统性能需求分析主要特性:安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 13 页装订线131).多样性: 个人空间网站在设计时必须遵循的一个重要原则,就是以用户为系统设计的中心。网络的发展大大降低了信息咨询的成本,用户面临更多的选择,所以,个人空间网站除了降低成本以外,还必须在皮肤,功能的多样性上下
43、工夫,才能够得到用户的认可。具体来说,应用系统应能实现用户特定的需求,操作界面友好、方便,功能设置符合用户的习惯和要求。2).易维护:管理员能够简单方便地管理系统,定义新的应用,并对系统进行日常维护;随着个人空间网站信息的变更或增加、数据规模的增大,系统升级、维护应易于操作;各子系统、功能模块的设计应具有良好的灵活性,保证在个人空间网站系统建设过程中后期系统功能的实现不影响前期已投入使用的系统功能。3).安全性:系统应充分考虑信息、设备、运行和管理的安全性,建立完善的多层次的安全保障体系,保证用户的个人信息等资料的数据安全。4).可扩展: 个人空间网站的用户从事着各种行业,他们的需求各不相同,
44、系统在设计时应充分考虑到用户需求不断变化的需要,降低系统在扩展新的业务功能时的复杂度。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 14 页装订线144 系统设计阶段4.1 系统的流程图前台:后台:4.2 总体结构确定1. 博客注册登录管理安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 15 页装订线15本模块实现新用户注册,登录功能。其中,注册新用户时会对用户输入的注册信息进行有效的验证,包括基本数据格式的有效性,以及逻辑有效性,例如:用户名被占用时给出提示。注册成功登录时会对会员输入的信息进行提示,如用户名、密码错误。同时在注册时还用到了验证码技术,防止恶意注
45、册!2. 会员文章查询显示管理本模块用于帮助网络用户快速定位到自己关注的页面及对应的文章信息中。在本模块中提供了最新文章推荐。3. 发表文章管理该模块实现了会员发表新文章的功能。会员发表文章时,可以选择文章所属类别,此外只有是会员才能发表文章,对此进行了严格的身份验证。4. 发表及显示评论管理该模块实现了与文章相关的评论管理。只有注册成本站用户才能对文章进行发表评论。5. 上传相片管理该模块实现了会员上传相片的功能,会员可以上传自己喜欢的相片,对相片的格式进行了有效的限制、相片的大小限制等,会员可以对相片进行删除,只有注册本站的用户才能对相片进行查看。6.会员发布公告管理本模块用于会员发布自己
46、最近的动态,抒发最近的心情,让本站注册的用户进行查看。7.会员发布投票管理该模块实现会员对当下的实事进行点评,本站可以通过查看投票的内容进行查看,并投上自己宝贵的一票8.会员添加朋友管理会员可以添加自己喜欢的朋友信息,让你随时掌握你的朋友信息。可以对你的朋友信息进行修改删除。4.3 数据库的设计一个设计良好的数据库,可以使系统的实现变得非常的简单。同时,也可以使系统的执行速度变得很快。反之,一个设计混乱的数据库,不仅增加了吸引的管理实现过程,同时在系统的执行过程中,使得检索变得很慢,降低效率。所以数据库的设计是一个系统设计很重要的步骤。根据系统功能设计要求和模块划分,本站的数据库主要有用户信息、文章信息、管理员信息、照片信息、文章类型信息、评论信息、投票信息、朋友圈视图。数据库的设计通常是以一个已经存在的数据库管理系统为基础的,常用的数据库管理系统有 Access、SQL Server、Oracle、MySQL 等。根据用户需求和系统分析,本系统采用 MySQL 数据库管理系统。安徽工业大学工商学院 毕业设计(论文)说明书共 56 页 第 16 页装订线161) 管理员信息表如图 3.5:表 3.5 管理员表2) 文章信息表如图 3.6:图 3.6 文章表3) 文章类型信息表如图