1、毕 业 设 计 ( 论 文 ) 任 务 书第 1 页毕业设计(论文)题目:基于 Java 的动漫网站的设计与实现毕业设计(论文)要求及原始数据(资料):1综述国内外动漫网站设计研究现状;2深入了解动漫网站设计的相关技术;3熟练掌握动漫网站的应用与分析,训练编写插件程序的能力;4设计并实现针对用户的使用功能以及网站管理员充分的管理功能;5深入分析动漫网站设计中插件的关键技术与编写语言;6训练检索文献资料和利用文献资料的能力;7训练撰写技术文档与学位论文的能力。第 2 页毕业设计(论文)主要内容:1综述动漫网站设计技术在网络中的应用;2了解动漫网站设计的相关技术;3熟悉动漫网站以及插件的开发环境;
2、 4设计动漫网站所需的数据库;5. 深入分析动漫网站中插件的关键技术与编写语言 JAVA 的设计流程;6熟练掌握基于动漫网站平台的测试;7设计与实现针对动漫网站中用户使用功能以及管理员管理功能的程序。学生应交出的设计文件(论文):1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。第 3 页主要参考文献(资料):1 张孝祥,徐明华. Java 基础与案例开发详解. 清华大学出版社, 20092 杨学瑜,高立军. 软件开发过程与项目管理. 电子工业出版社,2008 3 黎连业,王华,李淑春. 软件测试与测试技术. 清华大学
3、出版社,20094 James D. McCaffrey 等. NET 软件测试自动化之道M. 电子工业出版 社, 20075 张大方,李玮等. 软件测试技术与管理M. 湖南大学出版社,20076 张文静,林琪. JSP 程序设计. 人民邮电出版社, 20057 孙卫琴,李洪成. Tomcat 与 Java Web 开发技术详解. 电子工业出版 社, 20058 (美)H.M.Deitel,P.Jdeitel. Java 程序设计教程(第五版). 清华大学出版社, 20049 (美)Elliotte Rusty Harold. Java Network Programming. 东南大学出版社
4、, 200510 (美)John J.Patrick. SQL 基础(第二版). 清华大学出版社, 200411 Jonathan W.Palmer. Web Site Usability,Design,and Performance Metrics.Information Systems Research, 200212 Deborah E.Rosena,Elizabeth Purintonb. Website design:Viewing the web as a cognitive landscape. Journal of Business Research, 2004专业班级 软件班
5、 学生要求设计(论文)工作起止日期 2014 年 3 月 17 日2014 年 6 月 27 日指导教师签字 日期 2014 年 3 月 17日教研室主任审查签字 日期系主任批准签字 日期i基于 Java 的动漫网站的设计与实现摘 要随着科技的迅速发展,计算机技术已应用到社会的各个领域。随着计算机技术和通信技术的迅速发展,网络的规模也逐渐增大,网络的元素也随之不断增加,有的利用其通信,有的利用其商业用途,在网络上进行出售、收购、宣传等操作,从而使得网络越来越成为现今社会上必不可少的元素,而网站就是这个网络里很庞大的元素。本系统前台主要使用 JSP 作为开发语言,后台使用 SqlServer 作
6、为数据库管理系统,开发环境是 MyEclipse,服务器采用 Tomcat,开发出的一个基于 Web 技术的 B/S结构的动漫网。通过 JSP 动漫网这个平台,可以使用户足不出户就可以了解丰富的动漫信息,避免他们盲目在互联网上寻求相关的动漫信息,使得他们更尽兴地提高观看动漫的满足感,系统的主要功能包括:动漫类别管理、动漫信息管理、动漫上传下载、会员信息管理、动漫资讯管理、动漫图片管理等。分为管理员用户、会员用户这二种用户平台。关键词: 动漫网;JSP;B/S 结构The Design and Realization of AnimationWebsite based on JavaAbstra
7、ctWith the rapid development of science and technology, the computer technology has been applied to each field of the society. With the development of computer technology and the rapid development of communication technology, the scale of the network is gradually increasing, network element also inc
8、reases ceaselessly subsequently, some use their communication, using some of its commercial purposes, in the network for sale, purchase, publicity and other operations, so as to make the network more and more become modern society essential elements, and the website is this network big element。The f
9、ront of the system using JSP as a development language, the use of SqlServer as database management system, the development environment is MyEclipse, server using Tomcat, developed a Web technology based on B/S structure of the anime network。Through the JSP cartoon network this platform, users can r
10、emain within doors can understand the richness of the animation information, avoid them blindly seeking on the Internet related to the animation information, makes them more time to improve the satisfaction of watching animation, the main functions of the system include : the animation category mana
11、gement, information management, uploading and downloading anime animation, member information management, bulletin management system. As administrator, members of the user to the two user platform。Keywords: Cartoon Network; JSP; B / S structure1目 录摘 要 iAbstract.ii1 绪论 .11.1 课题背景 .11.2 目的和意义 .11.3 开发
12、工具及技术 .11.3.1 开发工具 11.3.2 JSP.31.3.3 JavaScript31.4 软硬件需求 .42 需求分析 .52.1 可行性分析 .52.1.1 技术的可行性 52.1.2 经济的可行性 52.1.3 操作可行性 52.1.4 法律的可行性 52.2 系统用户用例图 .52.2.1 普通用户用例图 52.2.2 管理员用例图 62.3 功能模块需求分析 .62.4 设计的基本思想 .72.5 性能需求 .82.5.1 系统的安全性 82.5.2 数据的完整性 82.6 界面需求 .82.6.1 输出设计 82.6.2 输入设计 83 系统分析与设计 103.1 数据
13、库的分析与设计 103.1.1 数据库的概念结构设计 .103.1.2 数据库的逻辑结构设计 .123.1.3 数据库的连接原理 .133.2 中文乱码问题处理 134 系统功能实现 164.1 管理员登陆页面 164.2 管理员模块 194.2.1 分类信息管理 .194.2.2 会员信息管理 .224.2.3 动漫信息管理 .244.2.4 修改个人密码 .274.2.5 安全退出系统 .274.3 普通用户模块 274.3.1 系统主页实现 .274.3.2 动漫信息查询 .284.3.3 用户注册模块 .285 系统测试 305.1 系统测试目的与意义 305.2 测试过程 305.2
14、.1 普通用户的注册测试 .305.2.2 主页面的登录测试 .305.2.3 管理员页面的登录测试 .315.2.4 管理员页面内容的添加、管理测试 .315.3 其他错误 32结 论 .33参考文献 .34致 谢 .35外文原文 .36中文翻译 .4211 绪论1.1 课题背景随着科技的迅速发展,计算机技术已应用到社会的各个领域。随着计算机技术和通信技术的迅速发展,网络的规模也逐渐增大,网络的元素也随之不断增加,有的利用其通信,有的利用其商业用途,在网络上进行出售、收购、宣传等操作,从而使得网络越来越成为现今社会上必不可少的元素,而网站就是这个网络里很庞大的元素。在 Internet 飞速
15、发展的今天,互联网已成为人们快速获取、发布和传递信息的重要渠道,因此网站建设在 Internet 应用上的地位越来越重要了。目前 Internet 上已有上百万个 Web 站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大。动漫网站成为越来越多动漫爱好者和非动漫爱好者获得信息和交流的平台,它满足了广大用户随时随地进行交流和沟通的需要,为网上用户提供交流场所,实现高效动态信息交换。现在虽然有很多动漫网站,但版面千篇一律,缺乏个性化、前瞻性,页面设计混乱,不利于用户查看,网站的交互性比较差,因此我针对以上问题设计一个个性化的动漫设计网站。我的目标
16、是做一个网站简单、页面清晰、内容相对全面、具有个性化、能给用户带来特殊视觉感觉的动漫网站。1.2 目的和意义系统开发主要为了满足用户的需要,为用户提供方便。基于 JSP 的动漫网的设计与实现数据库设计,动漫信息查询模块。此系统用 MVC 架构,系统主要包括动漫信息显示、按照类别管理动漫信息、在线播放下载等模块。此系统主要是为了迎合广大动漫爱好者了解动漫信息的需求,避免他们盲目在互联网上寻求动漫,使得他们更尽兴地提高观看动漫的满足感。1.3 开发工具及技术1.3.1 开发工具此次设计主要采用 MyEclipse 加 Tomcat 后台服务器进行,设计过程中页面主要使用 JSP 技术完成,下面对
17、MyEclipse、Tomcat 和 SqlServer 数据库进行简要介绍。(1) MyEclipseMyEclipse,是一个十分优秀的用于开发 Java,J2EE 的 Eclipse 插件集合,MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse 企业级工作平台(MyEclipse Enterprise Workbench,简称MyEclipse)是对 Eclipse IDE 的扩展,利用它我们可以在数据库和 JavaEE 的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的 JavaEE集成开发环境,包括了完
18、备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSP、CSS、Javascript、SQL、Hibernate。MyEclipse 是一个十分优秀的用于开发 Java,J2EE 的 Eclipse 插件集合,MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse 目前支持 Java Servlet、AJAX、JSP、JSF,Struts、Spring、Hibernate、EJB3、JDBC 数据库链接工具等多项功能。可以说 MyEclipse 是几乎囊括了目前所有主流开源产品的专属eclipse 开发工具。在结构上,MyEc
19、lipse 的特征可以被分为 7 类:JavaEE 模型、WEB 开发工具、EJB开发工具、 应用程序服务器的连接器、JavaEE 项目部署服务、数据库服务、MyEclipse 整合帮助。对于以上每一种功能上的类别,在 Eclipse 中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse 结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse 是 Eclipse 的插件,也是一款功能强大的 JavaEE 集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse5.5 以前版本需先安装 Eclipse。My
20、Eclipse5.5以后版本安装时不需安装 Eclipse。(2) Tomcat Tomcat 最初是由 Sun 的软件构架师詹姆斯邓肯戴维森开发的。后来他帮助将其变为开源项目,并由 Sun 贡献给 Apache 软件基金会。由于大部分开源项目 OReilly都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为Tomcat(英语公猫或其他雄性猫科动物) 。而 OReilly 出版的介绍 Tomcat 的书籍(ISBN 0-596-00318-8)的封面也被设计成了一个公猫的形象。而 Tomcat 的
21、 Logo 兼吉祥物也被设计成了一只公猫。Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好 Apache 服务器,可利用它响应对 HTML(标准通用标记语言下的一个应用) 。页面的访问请求。实际上 Tomcat 部分是 Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与 Apache 独立的进程单独运行的。诀窍是,当配置正确时,Apache 为 HTML 页面服务,而 T
22、omcat 实际上运行 JSP 页面和 Servlet。另外,Tomcat 和 IIS 等 Web 服务器一样,具有处理 HTML 页面的功能,另外它还是一个 Servlet 和 JSP 容器,独立的 Servlet 容器是 Tomcat 的默认模式。不过,Tomcat 处理静态 HTML 的能力不如 Apache 服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。(3) SqlServer SQL 是英文 Structured
23、 Query Language 的缩写,意思为结构化查询语言。SQL 语言的主要功能就是同各种数据库建立联系,进行沟通。按照 ANSI(美国国家标准协会)的规定,SQL 被作为关系型数据库管理系统的标准语言。3SqlServer 使用 C 和 C+编写,并使用了多种编译器进行测试,保证源代码的可移植性;支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows 等多种操作系统;为多种编程语言提供了 API;支持多线程,充分利用 CPU 资源;提供 TCP/IP、ODBC 和 JDBC 等多种
24、数据库连接途径;可以处理拥有上千万条记录的大型数据库。对于一般的个人使用者和中小型企业来说,SqlServer提供的功能已经绰绰有余,而且由于 SqlServer 是开放源码软件,因此可以大大降低总体拥有成本。SqlSever 的特点:真正的客户机/服务器体系结构;图形化用户界面,使系统管理和数据库管理更加直观、简单;丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地;SqlServer 与 Windows NT 完全集成,利用了 NT 的许多功能,如发送和接受消息,管理登录安全性等。SqlServer 也可以很好地与 Microsoft BackOffice 产品集成;具有很好的伸缩
25、性,可跨越从运行 Windows 95/98 的膝上型电脑到运行 Windows 2000 的大型多处理器等多种平台使用;对 Web 技术的支持,使用户能够很容易地将数据库中的数据发布到 Web 页面上;SqlServer 提供数据仓库功能,这个功能只在 Oracle 和其他更昂贵的 DBMS 中才有。1.3.2 JSPJSP 技术使用 Java 编程语言编写类 XML 的 tags 和 scriptlets,来封装产生动态网页的处理逻辑。网页还能通过 tags 和 scriptlets 访问存在于服务端的资源的应用逻辑。JSP 将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基
26、于Web 的应用程序的开发变得迅速和容易。 Web 服务器在遇到访问 JSP 网页的请求时,首先执行其中的程序段,然后将执行结果连同 JSP 文件中的 HTML 代码一起返回给客户。插入的 Java 程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP 与 Servlet 一样, 是在服务器端执行的,通常返回给客户端就是一个 HTML 文本,因此客户端只要有浏览器能浏览。JSP 页面由 HTML 代码和嵌入其中的 Java 代码所组成。服务器在页面被客户端请求以后对这些 Java 代码进行处理,然后将生成的 HTML 页面返回给客户端的浏览器。Servlet 是 JSP
27、 的技术基础,而且大型的 Web 应用程序的开发需要 Java Servlet和 JSP 配合才能完成。JSP 具备了 Java 技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。JSP 技术的优点:(1)一次编写,到处运行。除了系统之外,代码不用做任何更改。 (2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比 ASP/.net 的局限性是显而易见的。 (3)强大的可伸缩性。从只有一个小的 Jar 文件就可以运行 Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台 Applicatio
28、n 进行事务处理,消息处理,一台服务器到无数台服务器,Java 显示了一个巨大的生命力。 (4)多样化和功能强大的开发工具支持。Java 已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下(5)支持服务器端组件。web 应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供 web 页面调用,以增强系统性能。JSP 可以使用成熟的 JAVA BEANS 组件来实现复杂商务功能。内部对象说明:request 客户端请求,此请求会包含来自 GET/POST 请求的参数; response 网页传回客户端的响应;pageCo
29、ntext 网页的属性是在这里管理;session 与请求有关的会话;applicationservlet 正在执行的内容;out 用来传送响应的输出流;config 代码片段配置对象;pageJSP 网页本身;exception 针对错误网页,未捕捉的例外。1.3.3 JavaScriptJavaScript 是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端 Web 开发的脚本语言,常用来给 HTML 网页添加动态功能,比如响应用户的各种操作。JavaScript 的一个重要功能就是面向对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的
30、方式进行程序开发。在HTML 基础上,使用 JavaScript 可以开发交互式 Web 网页。JavaScript 的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。在本系统中很多地方使用了 JavaScript 技术,比如说,检验用户输入数据的有效性,是否重复,是否为空等等。JavaScript 是一种解释性的,基于对象的脚本语言。HTML 网页在互动性方面能力较弱,例如下拉菜单,就是用户点击某一菜单项时,自动会出现该菜单项的所有子菜单,用纯 HTML 网页无法实现;又如验证 HTML 表单(Form)提交信息的有效性,用户名不能为
31、空,密码不能少于 4 位,邮政编码只能是数字之类,用纯 HTML 网页也无法实现。要实现这些功能,就需要用到 JavaScript。JavaScript 是一种脚本语言,比 HTML 要复杂。不过即便你先前不懂编程,也不用担心,因为 JavaScript 写的程序都是以源代码的形式出现的,也就是说你在一个网页里看到一段比较好的 JavaScript 代码,恰好你也用得上,就可以直接拷贝,然后放到你的网页中去。正因为可以借鉴、参考优秀网页的代码,所以让 JavaScript 本身也变得非常受欢迎,从而被广泛应用。原来不懂编程的人,多参考 JavaScript 示例代码,也能很快上手。 JavaS
32、cript 主要是基于客户端运行的,用户点击带有 JavaScript 的网页,网页里的 JavaScript 就传到浏览器,由浏览器对此作处理。前面提到的下拉菜单、验证表单有效性等大量互动性功能,都是在客户端完成的,不需要和 Web Server 发生任何数据交换, 因此,不会增加 Web Server 的负担。 几乎所有浏览器都支持 JavaScript,如 Internet Explorer,Firefox,Netscape,Mozilla,Opera 等。1.4 软硬件需求硬 件 需 求 :CPU: Pentium 以 上 计 算 机内 存 : 512M 以 上软 件 需 求 :操 作
33、 系 统 版 本 : Windows XP /vista/Win7开 发 工 具 : MyEclipse 6.0.1后 台 服 务 器 : Apache Tomcat 6.0开 发 语 言 : Java5浏 览 器 : IE6.02 需求分析2.1 可行性分析开发任何一个系统,都会受到时间和资源上的限制。因此,在每一个项目开发之前,都要进行可行性分析,可以减少项目的开发风险,避免人力、物力和财力的浪费。下面就技术、经济、操作和法律四个方面来介绍。2.1.1 技术的可行性本系统开发工具是 MyEclipse 和 SqlServer 数据库,开发语言是 Java,主要使用了 J2EE 的技术,Ja
34、va 是一种面向对象编程语言,简单易学而且灵活方便。大三时就学习了 Java 课程,大学期间也系统的了解了 J2EE 的知识,本系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心。在大学期间学习过软件工程,软件测试,UML 统一建模语言等课程,每个学期也会完成对应的课程设计,具备一定的系统分析、设计和测试能力。因此,完成系统实现在技术上完全具有可行性。2.1.2 经济的可行性本系统所用的软件都是开源的,为开发软件节省了大量的金钱和时间,达到降低成本,提高开发效率的目的,本系统对计算机配置的要求不高,甚至网吧更换下来的低配置电脑都可以完全满足需要,所以在经济上具有完全的可行性。2.1.
35、3 操作可行性本系统操作简单,输入信息页面大多数都是下拉框的选择形式,在某些页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操作简便,对操作人员的要求很低,只需对 Windows 基本知识操作熟练,即可工作,而且本系统可视性非常好,所以在技术上不会有很大难度。2.1.4 法律的可行性本动漫网是自行开发的管理系统,是很有实际意义的系统,开发环境软件和使用的数据库都是开源代码,开发这个系统不同于开发普通的系统软件,不存在侵权等问题,即法律上是可行的。综上所述,建立一个商品信息查询是必要可行的。2.2 系统用户用例图2.2.1 普通用户用例图出于安全性的考虑,普通用户只有浏览查询动漫信
36、息、注册会员等功能、在线播7放下载等功能,其他的删除修改功能都没有设计,因为普通用户最主要关心的就是动漫信息的更新和查询等功能,普通用户用例图如图 2-1 所示。系统首页动漫信息查询浏览动漫信息在线注册会员下载喜欢的动漫普通用户上传动漫图片图 2-1 普通用户用例图2.2.2 管理员用例图管理员是系统的核心用户,涉及到五大功能模块,管理员对系统的所有用户有着操作的权限,能够及时动态的更新系统的各项信息,如图 2-2 所示。系统管理员登陆系统动漫类别信息管理修改个人密码动漫信息管理上传动漫信息会员信息管理图片信息管理图 2-2 管理员用例图2.3 功能模块需求分析本系统最大的特点是使用操作简单、
37、友好的提示信息。本系统将实现以下基本功能:(1)系统具有简洁大方的页面,使用简便,友好的错误操作提示(2)管理员用户具有动漫类别信息管理、会员信息管理、动漫信息管理,上传动漫、修改个人密码等功能(3)普通用户用户具有浏览查询动漫信息、在线注册会员、在线播放动漫、下载动漫等功能(4)具有较强的安全性,避免用户的恶意操作系统的功能结构图,分普通用户平台,管理员平台。分别如图 2-3 和图 2-4 所示。图 2-3 普通用户模块图图 2-4 系统管理员模块图2.4 设计的基本思想设计思想遵循以下几点:(1)采用 B/S 模式进行开发,其优点是后台与前台处理层次分明,而且符合众多已经习惯网页搜索方式的
38、用户。(2)采用面向对象的开发与设计理念。运用面向对象技术的前提是对整体系统的高度和准确抽象,通过它可以保证系统良好的框架,进而带来产品较强的稳定性和运行效率。(3)采用模块化设计。模块化设计要求将整个系统划分成基于小的模块,有利于代码的重载,简化设计和实现过程。(4)简单方便的系统界面。设计简单友好的系统界面,方便用户较快的适应系统9的操作。(5)速度优先原则。由于此工具最重要的评测标准就是速度,因此在设计过程中,具体过程尽量做到资源占用少,速度快。(6)设计既要突出重点,又要细致周到。要符合设计需求,在有可能改进的地方进行扩充,使系统更适应用户的需要。2.5 性能需求2.5.1 系统的安全
39、性本动漫网在管理权限上要严格进行控制,具体要求如下:(1)要想管理本系统的动漫信息,必须先要凭用户名和密码登陆到系统中,没有权限的用户不能查看系统的任何信息和数据,以确保系统的严密性和安全性。(2)在具体实现中设定不同权限,不同权限用户登录到系统后,不能越级操作。2.5.2 数据的完整性(1)各种记录信息的完整性,信息记录内容不能为空(2)各种数据间相互联系的正确性(3)相同数据在不同记录中的一致性2.6 界面需求界面设计目前已经成为评价软件质量的一条重要指标,一个好的用户界面可以增加用户使用系统的信心和兴趣,提高工作效率,JSP 技术是用 Java 语言作为脚本语言的,JSP 网页为整个服务
40、器端的 Java 库单元提供了一个接口来服务于 HTTP 的应用程序。 创建动态页面非常方便。用户界面是指软件系统与用户交互的接口,通常包括输出、输入、人-机对话的界面格式等。2.6.1 输出设计输出是由计算机对输入的原始信息进行加工处理,形成高质量的有效信息,并使之具有一定的格式,提供管理者使用。这是输出设计的主要职责和目标。系统设计的过程正好和实施过程相反,并不是从输入设计到输出设计,而是从输出设计到输入设计,这是因为输出表格直接与使用者相联系,设计的出发点应当是保证输出表格方便地为使用者服务,正确及时反映和组成用于各部门的有用信息。输出设计的原则是考虑既要全面反映不同管理层的各项需要,又
41、要言简意赅,不要将用户需要和不需要的都提供给用户。2.6.2 输入设计输入数据的收集和录入是比较费事的,需要大量的人力和一定设备,并且容易出错。如果输入系统的数据有错误,则处理后的输出将扩大这些错误,因此输入数据的正确性对于整个系统质量的好坏是具有决定性意义的。输入设计的原则有如下几点:(1)输入量应保持在能满足处理要求的最低限度。设计中可采用设置字段初值,下拉式数据窗口等方式尽量减少用户键盘输入量。输入量越少,错误率就越少,数据准备时间也减少。(2)输入的准备及输入过程应尽量容易进行,从而减少错误的发生。(3)应尽量早对输入数据进行检查(尽量接近原数据发生点),以便使错误及时得到更正。(4)
42、输入数据尽早地用其处理所需的形式被记录,以避免数据由一种介质转移到另一种介质时需要转录而可能发生的错误。113 系统分析与设计3.1 数据库的分析与设计计算机信息系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。数据库已经成为现在信息系统等计算机系统的基础与核心部分。数据库设计的好坏直接影响到整个系统的质量和效率。数据库的设计一般经过规划。需求分析、概念设计、逻辑设计、物理设计 5 个步骤。3.1.1 数据库的概念结构设计概念设计是指在数据分析的基础上自底向上的建立整个系统的数据库概念结构,从用户的角度进行视图设计,然后将视图集成,最
43、后对集成的结构分析优化得到最后结果。数据库的概念结构设计采用实体联系(E-R)模型设计方法。E-R 模型法的组成元素有:实体、属性、联系,E-R 模型用 E-R 图表示,是提示用户工作环境中所涉及的事物,属性则是对实体特性的描述。概念设计的目标是产生反映企业组织信息要求的数据库概念结构,即概念模式。概念模式是独立于数据库逻辑结构,独立于支持数据库的 DBMS,不依赖于计算机系统的,根据以上对数据库的需求分析,并结合系统概念模型的特点及建立方法,建立 E-R 模型图。实体、属性和实体间关系的模型如下所示。(1)系统整体 E-R 图如图 3-1 所示。实体 属性 实体间关系图 3-1 系统整体 E
44、-R 图(2)用户实体图如图 3-2 所示。会员信息账号姓名密码图 3-2 用户实体图(3)动漫类别实体图,如图 3-3 所示。动漫类别信息编号 I D类别名称图 3-3 动漫类别实体图(4)订单信息实体图,如图 3-4 所示。订单信息动漫 I D分类 I D动漫名称附件信息动漫主角发布时间订单金额图 3-4 订单信息实体图(5)管理员实体图如图 3-5 所示。管理员信息编号 I D登录账号登录密码13图 3-5 管理员实体图3.1.2 数据库的逻辑结构设计我们知道,数据库概念模型独立于任何特定的数据库管理系统,因此,需要根据具体使用的数据库管理系统的特点进行转换。即转化为按计算机观点处理的逻
45、辑关系模型,E-R 模型向关系数据库模型转换应遵循下列原则:(1)每一个实体要转换成一个关系(2)所有的主键必须定义非空(NOT NULL)(3)对于二元联系应按照一对多、弱对实、一对一、多对多等联系来定义外键。根据 E-R 模型,团购网系统建立了以下逻辑数据结构,下面是各数据表的详细说明。(1)会员信息表主要是记录了注册会员的基本信息。表结构如表 3.1 所示。列名 数据类型 长度 允许空 是否主键 说明id int 4 否 是 编号loginname varchar 50 否 否 账号loginpw varchar 50 否 否 密码name varchar 50 否 否 姓名表 3.1
46、会员信息表(t_user)(2)动漫分类信息表主要是记录了动漫类别的基本信息,表结构如表 3.2 所示。列名 数据类型 长度 允许空 是否主键 说明id int 4 否 是 类别编号name varchar 50 否 否 类别名称表 3.2 类别信息表(t_catelog)(3)动漫信息表主要是记录了管理员发布的动漫相关信息,表结构如图 3.3 所示。列名 数据类型 长度 允许空 是否主键 说明id Int 4 否 是 动漫 IDcatelog_id Int 50 否 否 分类 IDname varchar 50 否 否 动漫名称fujian varchar 50 否 否 附件信息zhujia
47、o varchar 50 否 否 动漫主角shijian Int 50 否 否 发布时间表 3.3 动漫信息表(t_dongman)(4)管理员信息表主要记录的管理员的账号信息,包括用户名和密码,表结构如表 3.4 所示。列名 数据类型 长度 允许空 是否主键 说明userId int 4 否 是 编号userName varchar 50 否 否 用户名userPw varchar 50 否 否 密码表 3.4 管理员信息表(t_admin)3.1.3 数据库的连接原理采用 JDBC 连接数据库的方式,只需在工程中导入对应数据库的 jar 包,就可以方便的对数据库进行连接,在程序中,用 Cl
48、ass.forName()方法来加载驱动程序,在用DriverManager 的 getConnection()方法就可以创建一个数据库连接。程序采用的是DAO 模式来操作数据库,DAO(Data Access Object,数据访问对象),是 Java 编程中的一种经典模式,已被广泛应用,也是 J2EE 架构中持久层框架的基础知识,基于分层次式的软件架构来实现对数据库的访问操作。DAO 模式的主要思想就是从抽象数据源获取与操纵数据的方法。抽象数据的含义就是编写应用程序的程序员不必关心数据库的物理位置,已经是何种数据库,只需使用封装数据库中表示记录的数据对象即可。其思想如图 3-6 所示。图
49、3-6 DAO 模式类图 图中 BussinessObject 是业务对象,是使用 DAO 模式的客户端;DataTransferObject 数据传输对象,在应用程序不同层次之间传输对象,在一个分布式应用程序中,通常可以提高整理的性能;DataObjectAcces 数据输入/输出对象封装了对数据源的一些基本操作;DataSource 指的是数据源。可以从图中看出,DAO 模式分离了业务逻辑和数据罗即将,是的编写的软件具有良好的层次式体系结构。本系统为了方便数据库的操作,主要使用 DBContent 的对象来接一个数据库(建立一个类DBContent) ,代码如下:public DBContent()String CLASSFORNAME=“ com.microsoft.sqlserver.jdbc.SQLServerDriver “;/连接数据库的驱动String url=“jdbc:sqlserver:/localhost:1433;databaseName=db_dm“;String user=“sa“;/连接数据库的用户名String password=“sa“;/连接数据库的密码tryClass.forName(CLASSFORNA