毕业设计(论文)-校内商品交易系统的设计与实现.doc_第1页
毕业设计(论文)-校内商品交易系统的设计与实现.doc_第2页
毕业设计(论文)-校内商品交易系统的设计与实现.doc_第3页
毕业设计(论文)-校内商品交易系统的设计与实现.doc_第4页
毕业设计(论文)-校内商品交易系统的设计与实现.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州轻工业学院专科毕业设计(论文)全套设计加扣3012250582 题 目 校内商品交易系统的设计与实现学生姓名 专业班级 软件技术(Java)12-02 学 号 院 (系) 软件学院 指导教师(职称) 完成时间 2014年 5月 26日 郑州轻工业学院专科毕业设计(论文)任务书课题名称 校内商品交易系统的设计与实现 专业班级 软件技术(Java)12-02 学号 姓名 主要内容:网上购物是随着Internet的发展普及起来的一种全新的生活方式。它使人们能够足不出户地选购商品,一个很好的购物网站涉及到很多的地方,比如网站的地位,网站的配套服务等。本课题涉及尝试用JSP在局域网络上架构一个网上校内商品交易市场,让多数学生都在学校内完成商品交易,通过交易,不仅可以减少广告进行环保,节俭,资源重复利用等传统文明教育,还可以帮助学生更好地学习和生活。基本要求: 设计严谨、功能完备;界面流畅、使用方便;扩充性强、易于维护;性能良好,安全可靠。主要参考资料:1张志峰. Java WEB 技术整合应用与项目实践(JSP+Servlet+Struts+Hibernate+Spring)M. 北京:清华大学出版社,2013.6.2李刚. 轻量级J2EE企业应用实战-Struts+Spring+Hibernate整合开发M.北京:电子工业出 版社,2007.4.3曹晓钢,唐勇,夏昕. 深入浅出HibernateM.北京:电子工业出版社,2005.6.完 成 期 限: 2014 年 5 月 26 日 指导教师签名: 专业负责人签名: 2014 年 3 月 1 日目录摘 要IAbstractII1 绪论11.1 项目背景11.2 校内商品交易系统的现状11.3 项目开发特色21.4 工作难度22 相关技术与工具32.1 技术支持32.1.1 B/S模式32.1.2 基于Struts +Hibernate架构42.1.3 AJAX技术62.1.4 MySQL 5.062.1.5 Tomcat 772.1.6 JSP技术72.2 工具简介72.2.1 Dreamweaver 872.2.2 MyEclIPse 10.082.2.3 SVN82.2.4 Chrome浏览器92.3 小结93 项目分析设计103.1 需求分析103.2 性能分析103.3 角色划分113.4 数据库设计113.4.1 表设计113.4.2 表之间关系143.5 框架设计153.6 功能模块设计163.6.1 登录模块163.6.2 用户注册模块163.6.3 个人商品发布模块163.6.4 个人中心模块163.6.5 找回密码模块173.6.6 管理员登录模块173.6.7 管理员管理商品上架下架模块173.6.8 管理员管理商品交易订单183.6.9 管理员管理用户模块183.6.10 用户意见反馈模块183.6.11 智能搜索商品模块183.6.12 商品详细信息查看模块183.6.13 发送留言购买商品模块193.6.14 购买下单模块193.6.15 其他功能193.7 技术要求193.8 系统运行环境设计203.8.1 硬件环境203.8.2 软件环境203.9 小结214 项目实现224.1 架构实现224.2 功能模块实现224.2.1 登录模块224.2.2 用户注册模块234.2.3 个人商品发布模块244.2.4 个人中心模块274.2.5 找回密码模块284.2.6 管理员登录模块294.2.7 管理员管理商品上架下架模块313.6.8 管理员管理商品交易订单324.2.9 管理员管理用户模块334.2.10 用户意见反馈模块334.2.11 智能搜索商品模块344.2.12 商品详细信息查看模块354.2.13 发送留言购买商品模块354.2.14 购买下单模块364.2.15 其他功能385 项目测试405.1 项目测试原理405.2 项目测试方法405.3 测试用例405.4 使用维护415.5 项目测试总结41结束语43致谢44参考文献45校内商品交易系统的设计与实现校内商品交易系统的设计与实现摘 要校内商品交易系统采用JSP/J2EE技术,使用Java编程语言编写的校园网交易平台软件。本系统采用的是最近几年流行的B/S开发模式1,是以互联网方式运行的。服务器端只需要安装本系统,而客户端用户只要可以上网,打开浏览器,输入轻院易购的网址,就可以非常方便快捷的通过浏览器访问系统,浏览和发布上平交易信息,免去了传统的C/S模式下复杂的安装、配置、维护等操作。同时由于使用面向对象的Java语言,所以本系统也具有Java语言的面向对象、与平台无关、安全性高、稳定性高、多线程等特性,以及Java语言对网络编程技术的支持。使得本系统具有很高的使用价值。系统开发主要分为三个部分,使用Hibernate处理数据库的映射,完成对数据的增、删、改、查,使用Struts处理业务逻辑和界面的跳转,CSS+JSP+HTML+JavaScript进行界面处理,并且配置了Struts.xml、Hibernate.cfg.xml,以及通过JDBC驱动桥接器处理对MySQL5.0数据库的访问。本系统分为三层,界面层采用了JSP,逻辑层即Server层,与数据层(DAO层)和Action层交互,是最复杂的一层,DAO层与数据库交互,完成数据的交互1。系统经过测试与维护,各项功能运行正常,能满足校内商品交易系统的基本功能需求,能够作为规范高效的进行校内商品交易操作平台。关键词 浏览器/服务器,Struts,HibernateTHE DESIGN AND IMPLEMENTATION OF CAMPUS COMMODITY TRADING SYSTEMABSTRACTThis system uses the JSP/J2EE technology, using the Java programming language to write a set of campus network trading plat FORM software. This system is in recent years popular B/S development model, is based on the Internet works. Only need to install the system on the Server and the client users as long as it can get to the Internet, open a browser and input light court, tesco s WEB site can be very quick and easy access to the system via a browser, and browse and put on trading in Form Action, from the traditional C/S mode complex installation, configuration, maintenance and other operations. At the same time, due to the use of object-oriented Java language, so this system also has the Java language object oriented, has nothing to do with the plat FORM, high security, high stability, multithreading features, System development mainly div IDE into three parts, using Hibernate handling database mapping, complete the data to add, delete, change, check, USES the Struts to handle business logic and interface jump, CSS + JSP + HTML + JavaScript interface processing, and configure the Struts. The XML, Hibernate. CFG. XML, and via the JDBC drive axle after processing of MySQL5.0 database access. This system is div IDE into three layer, interface layer USES the JSP, logic layer or layer Server layer and data layer (DAO) and the Action layer inter Action, is one of the most complex layer, DAO layer interact with the database, complete the data inter Action.KEY WORDS Browser/Server,Struts,HibernateII校内商品交易系统的设计与实现1 绪论1.1 项目背景网上购物是随着Internet的普及而发展起来的一种新兴的生活方式。它使人们能够足不出户地选购商品,一个成功的购物网站涉及到方方面面,比如网站的地位,网站的配套服务等。本课题涉及尝试用JSP在网络上架构一个网上校内商品交易市场,让每一个学生都在学校内完成商品交易,通过交易,不仅可以进行环保,节俭,资源重复利用等传统文明教育,还可以帮助学生更好地学习和生活。目前有很多学生喜欢在网上购物,但因为距离,真实度等等原因,当商品发过来后,发现不是自己想要的商品,如果搭建一个校内商品交易系统,可以通过网上浏览,然后通过当面交易,这样就可以得到保障。可以为同学解决“废之不用、弃之可惜”的物品。目前各高校在校大学生的书籍可以重复使用,有些同学他们常常为了寻找低价的商品而费尽周折。如今只需注册登录后即可查看商品信息,购买真的方便快捷。还可以净化校园环境,在每年毕业前夕,许多毕业学生在路边兜售旧书和二手物品,废弃了的就随意丢弃,对校园环境造成了影响。然而,在网上的虚拟空间内不再需要传统的广告、宣传单、海报,只需注册登录后即可发布信息,方便快捷。1.2 校内商品交易系统的现状随着全世界互联网技术的不断发展,各种基于互联网技术的网络应用不断涌现,网络技术正在不断的深入人们的生活。人们从Internet上获取信息、享受生活、交流感情、网上工作等。Internet正在迅速改变着人们的生活方式。在当前社会上,许多的各种类型的电子商务类网站纷纷建立,可以很大程度上的解决人们信息资源的闭塞以及地域上的限制。作为大学校园,伴随着学生的购买能力的提高和每年的升学和毕业,也存在的许多各种类型的商品,由于信息交流的落后,很多只限于校园公告栏,或者请人代为宣传的方式进行交易。这种方式有很多局限性和偶然性,并不能满足商品畅通交流的要求。于是一种新的商品信息交流的方式出现了,就是基于WEB的校园网商品交易系统。1.3 项目开发特色要实现真正意义上的校内商品交易系统,就要建立和完善从页面制作、审批、更新,流程管理,应用开发,安全性保证,与后台应用系统集成的以及客户支持的一整套行之有效的管理模式、运营方法和技术平台。本系统前台采用 JSP来开发基于WEB的页面,架构采用SSH(Struts +Hibernate)架构。本系统具有以下特色:从语言角度看:系统采用JSP和JAVA语言开发,高效、安全、跨平台、面向网络。从整体设计看:系统力求简洁实用,少占资源。从可扩展性看:系统充分的考虑了扩充需求,可扩展性强。1.4 工作难度本系统在开发中难度主要体现以下这几点: 整个系统的用户安全问题的解决,还有就是用户权限管理。 性能优越数据库设计与管理,体现在表的设计。 项目后台数据处理。 系统中的子模块的功能协调性解决。2 相关技术与工具2.1 技术支持2.1.1 B/S模式随着网络应用系统规模的不断扩大和软件结构的日趋复杂多样,系统中客户端和服务器端的负担也日益繁重,传统的C/S模式(Client/Server,客户端/服务器模式)两层结构软件的运行效率、可移植性、互操作性和 可重用性等也都难以满足新的需求,开发的焦点逐渐转移到了B/S 模式(Browser/Server,浏览器/服务器模式),客户端只需要安装有浏览器即可,应用全在服务器上面,不必担心软件不断的更新,维护的时候只需要修改服务器2。因此B/S模式为现在项目开发首选,本项目就是使用B/S模式的校内商品交易系统,如图2-1所示。WEB服 务 器客 户 端浏 览 器移动端浏览器应用请求返回xhtml图2-1 B/S模式结构图 B/S结构的优点具有分布性特点,可以随时随地进行查询、浏览等业务处理。业务扩展简单方便,通过增加网页即可增加服务器功能。维护简单方便,只需要改变网页,即可实现所有用户的同步更新。开发简单,共享性强。 B/S 模式的缺点个性化特点明显降低,无法实现具有个性化的功能要求。操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。页面动态刷新,响应速度明显降低。无法实现分页显示,给数据库访问造成较大的压力。功能弱化,难以实现传统模式下的特殊功能要求。 B/S架构软件的优势与劣势维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,C/S系统的各部分模块中有一部分改变,就要关联到其它模块的变动,使系统升级成本比较大,B/S处理模式大大简化了客户端,只要客户端机器能上网就可以3。对于B/S而言,开发、维护等几乎所有工作也都集中在服务器端,当企业对网络应用进行升级时,只需更新服务器端的软件就可以,这减轻了异地用户系统维护与升级的成本3。如果客户端的软件系统升级比较频繁,那么B/S架构的产品优势明显所有的 升级操作只需要针对服务器进行,这对那些点多面广的应用是很有价值的,例如一些招聘网站就需要采用B/S模式,客户端分散,且应用简单,只需要进行简单的浏览和少量信息的录入3。系统的性能。在系统的性能方面,B/S占有优势是可以在用户的浏览器的灵活性。任何时间、任何地点、任何系统,只要可以使用浏览器上网,就可以使用B/S系统的终端3。不过,采用B/S结构,客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作由服务器承担,这使得服务器的负担很重2。采用C/S结构时,客户端和服务器端都能够处理任务,这虽然对客户机的要求较高,但因此可以减轻服务器的压力,而且由于客户端使用浏览器,使得网上发布的信息必须是以HTML格式为主,其它格式文件多半是以附件的形式存放而HTML格式文件(也就是WEB页面)不便于编辑修改,给文件管理带来了许多不便3。比如说很多人每天用“谷歌”网,只要安装了浏览器就可以上网,并不需要了解“谷歌”运行的服务器用是什么系统,而事实上大部分服务器使用的是Linux操作系统。2.1.2 基于Struts +Hibernate架构SSH(Struts +Hibernate)是典型的J2EE三层结构9,分为表现层、中间层(业务逻辑层)和数据层3。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,在由中间层与数据库交互。 Struts 框架Struts是一种基于MVC经典设计模式的开放源代码的应用框架,也是目前WEB开发中比较成熟的一种框架,通过把Servlet、JSP、JavaBean、自定义标签和信息资源整合到一个统一的框架中,为WEB开发提供了具有高可配置性的MVC开发模式1。 Hibernate框架一般来说Hibernate是一种Java语言下的对象关系映射解决方案,它是一种自由、开源的软件。它用来把对象模型表示的对象映射到基于SQL的关系模型结构中去,为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架10。Hibernate不仅管理Java类到数据库表的映射(包括从Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间,它的设计目标是将软件开发人员从大量相同的数据持久层相关的编程工作中解放出来,无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate1。Hibernate对象关系映射提供延迟的与非延迟的对象初始化14。非延迟加载在读取一个对象的时候会将与这个对象所有相关的其他对象一起读取出来,这有时会导致成百的(如果不是成千的话)select语句在读取对象的时候执行14。这个问题有时出现在使用双向关系的时候,经常会导致整个数据库都在初始化的阶段被读出来了。当然,你可以不厌其烦地检查每一个对象与其他对象的关系,并把那些最昂贵的删除,但是到最后,我们可能会因此失去了本想在ORM工具中获得的便利14。一个明显的解决方法是使用Hibernate提供的延迟加载机制,这种初始化策略只在一个对象调用它的一对多或多对多关系时才将关系对象读取出来。这个过程对开发者来说是透明的,而且只进行了很少的数据库操作请求,因此会得到比较明显的性能提升。这项技术的一个缺陷是延迟加载技术要求一个Hibernate会话要在对象使用的时候一直开着,这会成为通过使用DAO模式将持久层抽象出来时的一个主要问题。为了将持久化机制完全地抽象出来,所有的数据库逻辑,包括打开或关闭会话,都不能在应用层出现13。结合Struts和Hibernate的架构研究向上整合Struts 的MVC框架,向下整合Hibernater的ORM框架 通过对Struts的分析,Struts框架需要人为控制事务3。在不引入Spring框架的情况下,程序需要手动管理SessionFactory实例,如通过工厂来管理SessionFactory实例,然后在WEB.xml文件中通过load-on-startup的Servlet或Listener来完成SessionFactory的实例化1。2.1.3 AJAX技术AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术12。主要包含了以下几点技术:基于WEB标准(standards-based presentation)XHTML+CSS的表示,使用DOM( Document Object Model)进行动态显示及交互,使用XML和XSLT进行数据交换及相关操作,使用XMLHTTPRequest进行异步数据查询、检索,使用JavaScript将所有的东西绑定在一起12。类似于DHTML或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术,使用AJAX的最大优点,就是能在不更新整个页面的前提下维护数据,这使得WEB应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息12。AJAX 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 WEB 应用程序的技术12。通过 AJAX,你的 JavaScript 可使用 JavaScript 的 XMLHTTPRequest 对象来直接与服务器进行通信。通过这个对象,你的 JavaScript 可在不重载页面的情况与 WEB 服务器交换数据12。AJAX 基于下列 WEB 标准: JavaScript XML HTML CSS在 AJAX 中使用的 WEB 标准已被良好定义,并被所有的主流浏览器支持,AJAX 应用程序独立于浏览器平台12。WEB 应用程序较桌面应用程序有诸多优势;它们能够涉及广大的用户,它们更易安装及维护,也更易开发。不过,因特网应用程序并不像传统的桌面应用程序那样完善且友好3。2.1.4 MySQL 5.0MySQL是一个关系型的数据库管理系统,由瑞典MySQL AB的公司开发,想在属于Oracle公司。MySQL是最流行的关系型数据库管理系统,功能也很强大,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。因为其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。2.1.5 Tomcat 7Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为WEB服务器的一些特有功能,如Tomcat管理和控制平台、安全局管理和Tomcat阀等。由于Tomcat本身也内含了一个HTTP服务器,它也可以被视作一个单独的WEB服务器。但是,不能将Tomcat和Apache WEB服务器混淆,Apache WEB Server是一个用C语言实现的HTTP WEB Server;这两个HTTP WEB Server不是捆绑在一起的。Apache Tomcat包含了一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。和其他Apache软件基金会旗下的项目一样,Tomcat是由该基金会的会员和其他志愿者开发与维护的,并且是一个被置于Apache协议之下的开源软件。用户可以根据该协议免费获得其源代码及可执行文件。2.1.6 JSP技术 JSP(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术。JSP其实是Servlet的扩展,通常是大多数HTML代码中嵌入少量的Java代码。借助形式上的内容和外观表现的分离,WEB页面制作的任务可以比较方便地划分给页面设计人员和程序员,并方便地通过JSP来合成。在运行时,JSP将会被首先转换成Servlet,并以Servlet的形态编译运行。因此它的效率和功能与Servlet,同样具有很高的效率。借助内容和外观的分离,JSP把页面制作中不同性质的任务方便地分开,从而获得比Servlet更高的开发效率。网站所有显示的东西均离不开JSP技术。2.2 工具简介2.2.1 Dreamweaver 8Adobe Dreamweaver(前称Macromedia Dreamweaver)是Adobe公司的著名网站开发工具。它使用所见即所得的接口,亦有HTML编辑的功能。它现在有Mac和Windows系统的版本。原本由Macromedia公司所开发。Dreamweaver由MX版本开始使用Opera软件公司的排版引擎“Presto”作为网页预览。由CS4 版本开始,则转用WEBKit 排版引擎(亦即Google Chrome和Apple Safari浏览器所用的排版引擎)作为网页预览。Dreamweaver 是收购Macromedia 公司所得的产品。Dreamweaver 8 是Macromedia 被收购前的最后版本。收购后由Adobe 继续发展Dreamweaver,由版本9 起改以CS3 (Creative Suite)命名,并并入当时的CS3 套装。以CS3 开始命名而非CS1,相信是为了与其他Adobe CS 产品版本看齐,避免混淆。使用Dreamweaver 8 设计出轻院易购的操作界面。2.2.2 MyEclIPse 10.0 MyEclIPse企业级工作平台(MyEclIPse Enterprise Workbench,简称MyEclIPse)是对EclIPseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts, JSP,CSS,JavaScript,SQL,Hibernate。2.2.3 SVNApache Subversion(简称SVN),一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS转移到Subversion。虽然在2006年Subversion的使用族群仍然远少于传统的CVS,但已经有许多开放原码团体决定将CVS转换为Subversion。已经转换使用Subversion的包括了FreeBSD、Apache Software Foundation、KDE、GNOME、GCC、Python、Samba、Mono以及许多团体。许多开发团队换用Subversion是因为Trac、SourceForge、CollabNet、CodeBeamer等项目协同作业软件以及EclIPse、NetBeans等IDE提供Subversion的支持集成。SVN采用客户机/服务器体系,代码、文档的各种版本都存储在服务器端,开发者首先从服务器上获得一份复制到本机,然后在此基础上进行开发。开发者可随时将新代码提交给服务器,也可以通过更新操作获得最新的代码,保持其他开发者的一致。2.2.4 Chrome浏览器Google Chrome,又称Google浏览器,是一个由Google(谷歌)公司开发的网页浏览器。该浏览器是基于其他开源软件所撰写,包括WEBKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。软件的名称是来自于称作Chrome的网络浏览器图形使用者界面(GUI)。Chrome提供50种语言版本,有Windows、Mac OS X、Linux、Android、iOS以及Windows Phone版本提供下载。2013年9月,Chrome已达全球份额的43%,成为使用最广的浏览器。2014年2月,谷歌在PC版Chrome中整合了语音搜索功能。用户打开浏览器输入轻院易购的网址就可以访问校内商品交易系统,查看商品,进行商品交易。2.3 小结一个良好的框架可以让开发人员减轻重新建立解决复杂问题方案的负担和精力;它可以被扩展以进行内部的定制化;并且有强大的用户社区来支持它,一个良好的框架通常能很好的解决一些问题9。以上介绍的Struts+Hibernate软件是一个优秀的解耦架构。这种架构就是J2EE的分层架构,在好的分层架构中,控制层要依赖于业务逻辑层,但绝不与任何具体的业务逻辑组件耦合,只与接口耦合,业务逻辑层依赖与DAO层,也不会与任何具体的DAO组件耦合,而是面向接口编程2。采用这种方式的软件实现,即使软件的部分发生改变,其他部分也不会改变9。本校内商品交易系统的开发中使用了AJAX技术,它是一种独立于 WEB 服务器的软件技术。AJAX 在用户浏览器与 WEB 服务器之间使用异步数据传输(HTTP请求),这样就可使网页从服务器返回少量的信息,就不用整个页面信息。可使系统程序运行更好,用户体验更好。通过对本系统所使用的框架、技术以及开发过程所使用的工具的介绍使读者对本项目的开发有一定的了解。3 项目分析设计3.1 需求分析本系统是面向校内所有人员,为其提供服务的综合开放商品交易系统。本系统的应用目标就在学校内可以完成商品的发布展示和商品交易。用户可以在校内商品交易系统中注册自己的账户,登录自己的账户后可以展示自己的商品,同时也可以在系统中看到其他用户发布的商品,可以与其他用户留言,留下自己的购买意向,双方通过交流后再当面交易,完成商品的交易。按权限本系统分四个子系統: 用户管理子系統:用户注册(邮箱激活、邮箱验证)、用户登录、用户注销、修改密码、找回密码(邮箱找回、密保问题找回)、个人中心(个人消息查看、个人消息管理、个人商品信息管理、个人信息完善)。 商品管理子系統:智能搜索商品、分类商品信息查看、商品信息发布、单个信息商品信息查看。 商品消息子系统:查看商品消息、查看个人商品消息,回复个人信息消息。 管理员子系统:管理员登录、商品审核管理(商品查看、商品上架、商品下架)用户管理、删除用户、查看用户发布的商品、管理用户反馈。3.2 性能分析系统性能需求是指系统所要遵循的一些约束和限制,如用户访问权限的控制、处理时间的约束、安全性要求、可靠性要求等等。下面是本系统的性能要求: 系统具有的较高的安全性,具有相关提示,管理人员的账号是系统指定的人员账号,其一般用户不能登录。 面对一般用户,用户无需登录就可以查看系统中的商品信息,还可以对系统进行用户反馈,登录后可以发布自己的商品信息,管理个人中心,给商品进行留言,预约交易时间。此外,由于数据要通过网络传输,对于一些重要数据必须进行加密保护,以及利用事务处理技术防止因网络延迟或中断导致数据不完整、不一致的现象发生。3.3 角色划分校内商品交易系统是面向校内人员(学生以及其他人员)来使用的。各个角色对应的操作也都不相同,按照角色来划分的系统操作如下:管理员:管理员登录、商品审核管理(商品查看、商品上架、商品下架)用户管理、删除用户、查看用户发布的商品、管理用户反馈。一般用户:用户注册(邮箱激活、邮箱验证)、用户登录、用户注销、修改密码、找回密码(邮箱找回、密保问题找回)、个人中心(个人消息查看、个人消息管理、个人商品信息管理、个人信息完善)、购买商品、确认下订单。游客:对商品的浏览和查看。3.4 数据库设计数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。数据库能把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。校内商品交易系统在数据库中有6张表、用户信息表,商品信息发布表,商品交易消息表,用户积分记录表,意见反馈信息表。3.4.1 表设计(1) 用户信息表表名:user。用户信息表记录的是每个用户的个人详细信息。u_id 是唯一的标识符号,只自动增长的。数据库中每个表多事数据库独立的一部分,但每个表又不是完全独立的,表与表之间可能存在着相互的联系,两个表之间的通过主键来建立联系。建立表之间的关系能够方便的连接连个表或多个表,以便一次能查找多个相关数据。将多个数据置于多个不同的表中,可以减少数据冗余,也可以保证数据的完整和正确。用户信息表中的字段除了用户id、用户昵称、登陆密码、用户邮箱、注册时间和注册IP不可以为空,其他的字段的默认只都是“null”,其中用户邮箱和用户名可以用户登陆,邮箱可以注册激活和找回密码是使用,所以用户在注册时必须要填写,其他的信息系统是自动录入。用户信息表与商品信息表之间的关系是一对多的关系,即一个用户可以发布多件商品。用户信息表中的id是商品信息表的外键。用户信息表记录如表3-1所示。表3-1 用户信息表(user)名称字段类型是否为空是否为主键IDu_idint否是用户昵称u_namevarchar否否登录密码u_passwordvarchar否否用户性别u_gendervarchar是否用户积分u_pointvarchar是否用户年龄u_agevarchar是否用户qqu_qqvarchar是否用户手机号u_phonevarchar是否用户邮箱u_emailvarchar否否用户最后登录IPu_lastIPvarchar是否用户最后登录时间u_lasttimevarchar是否用户注册时间u_registerdatevarchar是否用户密保问题u_recommemdatevarchar是否用户密保问题答案u_passwordquestionvarchar是否(2) 商品信息表表名:product。商品信息表记录的是每个用户发布的每个详细商品信息。商品信息表中的每个字段都必须有信息,在录入时利用AJAX技术在用户界面做一次验证后,在服务器提交时还要验证一次,这要可以防止用户恶意发布。为了保持商品的真实性所以要保持商品信息的完整性,所以存储商品信息的表的字段比较多,商品信息表中p_id 是唯一的标识符号,只自动增长的。如表3-2所示。表3-2 商品信息表(product)名称字段类型是否为空是否为主键商品IDp_idint否是用户idu_idint否否商品种类p_numbervarchar否否商品名称p_namevarchar否否商品原价p_pricehvarchar否否商品现价p_pricevarchar否否商品成色p_conditionvarchar否否商品图片p_photovarchar否否商品描述p_descrIPtionvarchar否否联系qqpqqvarchar是否商品发布地址padressvarchar是否联系电话pphonevarchar是否商品发布时间datetimevarchar是否商品是否可以上架p_trueint是否(3) 系统反馈信息表表名:advise。系统信息反馈信息表记录的是所有用户对系统的建议和信息反馈。这个表中存储的信息只有管理员和系统开发者可以看到,用于完成对系统的升级,和开发指导。y_id 是唯一的标识符号,只自动增长的。如表3-2所示。表3-2 信息反馈表(advise)名称字段类型是否为空是否为主键意见信息idy_idint否是反馈信息姓名y_nameint是否反馈用户电话y_phoneint是否反馈信息内容y_jianyivarchar否否反馈信息时间y_datedate否否(3) 商品订单信息表表名:order。商品订单信息表记录的是每个用户想购买的订单详情信息。o_id 是唯一的标识符号,只自动增长的。如表3-2所示。表3-2 商品信息表(order)名称字段类型是否为空是否为主键订单ido_idint否是卖家idu_idfint否否买家idu_idtint否否当面交易地址orderadressvarchar是否当面交易时间ordertimevarchar是否订单编号cbvarchar是否商品idp_idint否否商品价格p_pricevarchar是否商品成色p_conditionvarchar是否商品图片p_photovarchar是否商品描述p_descrIPtionvarchar是否下单时间orderdatevarchar是否交易是否完成finishvarchar是否3.4.2 表之间关系表与表之间可能存在着相互的联系,两个表之间的通过主键来建立联系。建立表之间的关系能够方便的连接连个表或多个表,以便一次能查找多个相关数据。将多个数据置于多个不同的表中,可以减少数据冗余,也可以保证数据的完整和正确。 用户信息表商品信息表(一对多关系)用户信息表与商品信息表之间的关系是一对多的关系,即一个用户可以发布多件商品。用户信息表中的id是商品信息表的外键。 商品信息表留言信息表(一对多关系)商品信息与留言信息表之间的关系是一对多的关系,即一个商品有多个留言信息。商品信息表中的id是留言信息表的外键。 意见反馈表意见反馈表是一张独立的表,用户存放所有对系统设计和开发建议信息的表。当用户打开校内商品交易系统时可以对系统存在的问题进行反馈。 商品订单表商品订单表是存储用户交易订单,商品订单与用户是多对多的关系,一个订单对应有买家和卖家,商品订单表中有订单编号和订单的信息。3.5 框架设计系统框架设计是合理地进行功能的划分和定义。我们从模块功能的角度出发,遵循模块设计的基本原则:即模块化、抽象和局部化模块独立等,将各子系统分解为若干个功能模块。图3-2给出了校内商品交易系统的功能模块图。系统管理员商品管理意见反馈管理订单管理用户管理注册用户登陆商品发布商品下单用户注册登陆浏览商品用户意见反馈图3-2 校内商品交易系统的功能模块图3.6 功能模块设计本系统按权限分四个子系统即:用户管理子系统、商品管理子系统、商品消息子系统、管理员管理子系统。3.6.1 登录模块登录页面要求在对应位置的文本框中输入用户名、密码,确认后点击登录按钮。系统进行用户、密码检证,后台根据用户密码自动查看权限。系统验证成功后会根据相应的角色来跳转到相应的角色操作页面,以角色的划分来进行系统权限的控制。3.6.2 用户注册模块注册页面要求在对应位置的文本框中输入用户名、密码,重复密码,以及用户的邮箱,确认后点击注册按钮。系统会将检测你的用户名是否合法,密码是否符合要求,邮箱是否存在,如果都符合要求,系统会给这个注册用户发送一个验证邮件,之后将用户信息写入到数据库中。然后提示用户信息注册成功,以及要邮箱激活,如果注册失败将返回失败信息。3.6.3 个人商品发布模块用户首先需要登录,只有在登录的状态下才能够发布自己的商品。点击我要发布,系统会自动监测用户有没有登录,如果有登录,将进入选择发布种类界面,进行商品信息提交。提交成功后会提示交易方式。如果没有登录,将进入到登录界面,提示用户要先登录才能发布。提交商品信息中,包括了商品的一般信息。3.6.4 个人中心模块用户首先需要登录,只有在登录的状态下才能够进入自己的个人中心。打开主页,点击登录,登录后导航条会出现个人中心,点击个人中心,就会进入自己的个人中心,可以看到自己的个人信息,个人发布的商品,个人消息,在个人中心中用户可以修改自己的密码,完善自己的信息。发布自己的商品,管理自己的商品,管理自己的个人能消息。修改自己的个人信息。 3.6.5 找回密码模块如果登录时忘记了自己的密码,可以使用找回密码功能,找回自己的密码。打开主页,右上角会有找回密码功能,进入后,会出现找回密码界面,输入用户的用户名,有两种找回方式,一种是密保问题找回,一种是邮箱找回,如果用户注册后没有完善自己的信息,则密保问题找回不能使用,因为用户没有设置自己的密保问题,只能用邮箱找回方式。如果完善过自己的信息,设置过自己的密保问题,会出现密保问题界面,如果回到正确,则返回给用户密码,如果回答密保问题错误,则找回密码失败。如果用户选择的是邮箱密码找回,系统会自动给用户发送一封邮箱,用户必须登录邮箱进行验证才能返回给用户密码。3.6.6 管理员登录模块管理员没有登录入口链接,为了安全,管理员限制IP登陆,只对指定的IP开放登陆所以,特定IP的电脑上打开浏览器输入指定的网址,进入管理员登录界面,在对应位置的文本框中输入管理员用户名、管理员密码,确认后点击登录按钮。系统进行用户、密码检证等一系列验证后,后台根据用户密码自动查看权限,记录登录日志。系统验证成功后会根据相应的角色来跳转到相应的角色操作页面,以角色的划分来进行系统权限的控制。3.6.7 管理员管理商品上架下架模块管理员登录成功后,会进入管理界面,可以查看用户发布的所有的商品信息,商品信息在管理界面可以分为已上架商品和待审核的商品,用户可以查看商品详情,如果,合格,可以进行上架处

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论