1、 SHH框架实训课程设计说明书姓 名: 学 号: 班 级: 指导教师: 完成日期: 大学生易物平台的设计与实现目 录第1章 引言31.1 选题背景31.2.1 技术可行性41.2.2 经济可行性41.2.3 操作可行性4第2章 需求分析52.1 用户功能需求52.2 性能需求52.3 主要技术分析6第3章 概要设计83.1 功能模块图83.2 处理流程设计93.2.1 系统操作流程93.2.2 数据增加流程103.2.3 数据修改流程103.2.4 数据删除流程11第4章 详细设计124.1系统E-R图124.2 数据库设计124.2.1 mysql简介124.2.2 数据库表结构134.3
2、界面及代码设计154.3.1 用户注册154.3.2 二手物品发布154.3.3 用户登陆154.3.4 网站首页16第5章 系统调试与测试175.1 程序调试175.2 程序的测试17第6章 总结18参考文献18第1章 引言1.1 选题背景在全球知识经济和信息化高速发展的今天,无论是在生活、工作还是学习方面,信息都是决定成败的关键,小到生活中的需求,大到企业的发展,特别是对企业实现跨地区、跨行业、跨国经营,信息都起着至关重要的作用,而电子商务作为一种崭新的商务运作模式,越来越受到企业的重视。随着社会的发展,产品的不断更新换代使得人们对物质的要求越来越高,随之而来的问题便是越来越多的校园易物堆
3、积了下来却无法得到更好的利用。与传统的交换方式相比,物品交换网站是另一种形态的宣传和交换通道,是传统交换方式的延伸。它除了一般的电子商务功能外,还包括产品展示,商品检索,在线交友等服务;在迎合了电子商务这个社会大前提下,每个人都可以在网上购买或者交换自己喜欢的商品,从而可以大大地节约资金、时间和资源,并起到促进整个社会和谐的作用。中国加入世界贸易组织,外国物流企业进一步进入中国物流市场,给中国带来了新的物流服务理念,管理模式,以及新的物流技术与装备,对中国物流的发展是一个巨大的推动。从目前的种种情况来看,社会竞争越来越激烈,在这个竞争和效率并存的社会,人们有很强的时间观念,信息社会的高科技,商
4、品经济化的高效益,使网络的应用已普及到经济和社会生活的各个领域。基于JSP模式的网络购物网站克服了传统销售方式时所带来的人力、物力以及时间上的浪费,同时也保证了销售过程的科学化、高效化,使销售过程方便、准确、快捷。网络的发展推动了客户与商家之间的交易的高效性,网上销售即将成为主流。1.2 可行性分析1.2.1 技术可行性本系统仅需要一台装有IE浏览器的计算机即可,对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟,要运用HTML样式,图形图象制作工具来制作生动活泼的网页及美观的图形文件或动画文件。1.2.2 经济可行性由于本系统是为学
5、生学习使用的系统,装上该应用软件,即可使用系统,系统成本主要集中在系统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。所带来的效益远远大于系统软件的开发成本。在经济上完全可行。1.2.3 操作可行性界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充。第2章 需求分析2.1 用户功能需求基于SSH的大学生易物交换网站的设计与实现。本系统采取的是原型法,采取这个方法我是这样想的,因为在现在最流行的软件设计方法也是这个,现在用这个毕业设计的机会先熟悉一下,但是并不是这样才采取原型法,原型法有它自己的优点,因为原型法是在做项目
6、的过程中,现在设计出来项目的原型,以后就可以继续的对子项目进行开发与研究了,就是最步根本系统的大致要求,设计出一个系统,能大致上实现功能,但不是很完善也没有完全实现功能。方便在后续过程的修改与应用。大学生易物交换网站工作流程为:系统启动并进入登录界面,用户进行登录,所有用户都可以浏览系统主页面。用户浏览、阅读和查询信息,注册用户除了可以完成用户的操作外,还可以进行对自己物品进行的操作(包括对自己的物品的增加、修改和删除的操作)。用户可以选择交换的物品进行交换。2.2 性能需求系统对环境的要求服务起端的最低配置是由建立站点所需要的软件来决定的,在最底配置的情况下,服务器的性能往往不进人意,现在硬
7、件性能已经相当出色,而且价格也很便宜,因此通常应给服务器端配置高性能硬件。本机器的配置如下:处理器:Inter Pentium 41.6Hz或更高。内存:512MB硬件空间:160GB题目主要采用的技术数据库:mysql编程语言 JSP AJAX JQuery服务器:Tomcat5.5,jdk1.6开发环境:WindowsXP2.3 主要技术分析Java不依赖平台的特征使得它受到了广泛的关注3。网站的设计主要采用J2EE技术体系,使用分层思想来设计程序。J2EE是使用Java进行企业开发的一套扩展规范,它提供基于组件设计、开发、部署和管理企业应用的解决方案,基于J2EE的企业级应用系统,不受任
8、何特定操作系统、网络环境、硬件平台的束缚4。本网站在技术上除了使用JSP外,还采用了Struts2、Hibernate、以及AJAX、JQuery技术。SSH框架SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理
9、,管理struts和hibernate。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理struts和hibernate。系统的基本业务流程是: 在表示层中,首先通过JSP页面实现交互界面,负责接收请求(Request)和传送响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServ
10、let接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同
11、层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。JQuery简介Jquery是继prototype之后又一个优秀的Javascript框架。它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+),jQuery2.0及后续版本将不再支持IE6/7/8浏览器。jQuery使用户能更方便地处理HTMLdocuments、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。AJAX简介
12、Ajax是一种开发技术和设计模式,支持网站或应用程序,使用实时数据更新界面,无需页面刷新。该功能创建了一种更为流畅且更具桌面风格的用户体验。基于 Ajax 开发的一个关键驱动因素是几个全功能 JavaScript 库的演变和改进。第3章 概要设计3.1 功能模块图大学生易物平台用户管理员注册登录发布易物信息信息查询发表留言发布需求信息新浏览帐户管理易物信息管理会员管理需求信息管理系统管理资讯管理公告管理3.2 处理流程设计3.2.1 系统操作流程系统登录界面输入操作员及密码系统主界面系统管理错误信息数据库检查密码错误密码正确功能界面功能处理3.2.2 数据增加流程添加信息时,编号字段由系统自动
13、生成,且不能修改,其他信息由用户输入,之后对数据进行合法判断,合法则写入保存至数据库,不合法则重新输入数据。数据增加流程图:开始自动生成编号输入数据是否合法写入数据库结束图3.2 数据增加流程图3.2.3 数据修改流程在修改信息时,先选中一条待修改的记录,然后直接输入数据,判断合法性,合法则保存至数据库,不合法重新输入。数据修改流程图如图3.3所示。开始选择需要修改记录输入数据是否合法写入数据库结束图3.3 数据修改流程图3.2.4 数据删除流程当用户选定一条记录时,单击删除按钮,会提示用户是否确定删除,然后删除数据库相关内容。数据删除流程图如图3.4所示。开始选择需要删除记录是否删除更新数据
14、库图3.4 数据删除流程图第4章 详细设计4.1系统E-R图用户名密码地址电话用户管理易物信息属于类别编号品牌名称名称型号详细登录发布信息评论留言系统管理用户4.2 数据库设计4.2.1 mysql简介Mysql是一个基于关系型数据库模型建立的数据库管理系统软件(DBMS)。它帮助用户方使地得到所需信息,并提供强大的数据处理工具。它可以帮助用户组织和共享数据库信息,以便于根据数据库信息作出有效的决策。另外,仅有这样个数据库管理系统软件(DBMS),则只能进行一些信息系统所需要的简单数据处理,且对操作者有较高的操作技能要求。因此,信息系统的开发者都是在某种数据库管理系统软件DBMS环境下编写相应
15、的应川程序,以形成一个能够满足应用需求且操作尽可能简单的应用型信息系统,这被称之为二次开发。 4.2.2 数据库表结构设计表“admin”列名数据类型长度允许空IdInt4否UsernameVarchar50否PasswordVarchar50否CreattimeDatetime8否FlagInt4否IsuseInt4否LogintimesInt4否QuanxianVarchar1000否设计表“affice”列名数据类型长度允许空IdInt4否TitleNvarchar100否ContentNvarchar200否AddtimeDatetime8否AdderNvarchar50否Ifhide
16、Int4否设计表“member”列名数据类型长度允许空IdInt4否Usernamenvarchar50否PasswordNvarchar100否TypeNvarchar50否RegtimeDatetime8否IfuseInt4否LogintimesInt4否LasttimeDatetime8否LastipNvarchar50否设计表“news”列名数据类型长度允许空IdInt4否TitleNvarchar150否PicNvarchar150否ContentText16否AddtimeDatetime8否AdderNvarchar50否IfhideInt4否VisitInt4否UpInt4否设
17、计表“post”列名数据类型长度允许空IdInt4否DnumNvarchar50是AddtimeNvarchar50是FlagNvarchar50是MemberNvarchar50是4.3 界面及代码设计4.3.1 用户注册游客可以进行注册会员,注册会员需要填写用户的用户名、登陆密码。界面如下图所示:4.3.2 二手物品发布用户可以进行二手物品发布操作,界面如下图所示:4.3.3 用户登陆用于用户登陆进入系统的界面,用户需要建立一个账号和密码才能进入使用系统,当用户输入自己的账号和密码时,系统进行验证,如果正确,进入系统;如果错误,则提示用户输入的信息不正确,重新输入信息.该界面还为新用户设置
18、了专门的注册链接,通过点击注册按钮直接进入新用户的注册界面.在登陆的时候,密码框采用密文形式输入,保护用户登陆的安全性。界面如下图:4.3.4 网站首页网站首页以清新的色彩搭配设计,突出简洁大方的效果。第5章 系统调试与测试5.1 程序调试在设计系统的过程中,存在一些错误是必然的。对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致的错误结果。这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。5.2 程序的测试与开发过程类似,测试过程也
19、必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。因此,大型软件系统的测试基本上由下述几个步骤组成:(1)模块测试 在这个测试步骤中所发现的往往是编码和详细设计的错误。(2)系统测试 在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求说明中的错误。(3)验收测试 在这个测试步骤中发现的往往是系统需求说明书中的错误。第6章 总结宝剑锋从磨砺出,梅花香自苦寒来。一个好的程序不是一朝一夕就可以完成的,必须经历一个悉心准备,认真开发的过程。同样,一个好的设计师也不是一朝一夕就可以实现的,也是要经历一个艰苦学习的过程。有时,过
20、程比结果更重要。因为结果会有偶然,但是过程不会有偶然,无数个成功的过程是必然最终会成就一个成功的结果。课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,这次课程设计虽然很累,但我学到了不少东西,对项目的开发过程和方法有了更深入的了解,培养了我们的团队精神,锻炼了我们的沟通和表达能力。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。总结一下,本次设计让我学到了很多对我将来有用的东西,不仅是理论上的更多的是实践上的。同时也让
21、我看到了自己的差距,要想在以后的工作中游刃有余,还需要更多的努力!参考文献1 BruceEckel.JAVA编程思想. 机械工业出版社,2003年10月:1-3782赛奎春.JAVA工程应用与项目实践. 机械工业出版社, 2002年8月:23-2943FLANAGAN.JAVA技术手册. 中国电力出版社,2002年6月:1-4654孙一林,彭波.JSP数据库编程实例. 清华大学出版社,2002年8月:30-2105LEE ANNE PHILLIPS.巧学活用 JSP.电子工业出版社,2004年8月:1-3196飞思科技产品研发中心.JSP应用开发详解.电子工业出版社,2003年9月:32-3007耿祥义,张跃平.JSP实用教程. 清华大学出版社,2003年5月1日:1-3548孙涌.现代软件工程.北京希望电子出版社,2003年8月:1-246 9萨师煊,王珊.数据库系统概论.高等教育出版社,2002年2月:346010Brown等.JSP编程指南(第二版). 电子工业出版社 ,2003年3月:1-268 11清宏计算机工作室.JSP编程技巧. 机械工业出版社, 2004年5月:1-410 12朱红,司光亚.JSP编程指南.电子工业出版