毕业设计(论文)-网上书城系统购物车管理的设计.doc_第1页
毕业设计(论文)-网上书城系统购物车管理的设计.doc_第2页
毕业设计(论文)-网上书城系统购物车管理的设计.doc_第3页
毕业设计(论文)-网上书城系统购物车管理的设计.doc_第4页
毕业设计(论文)-网上书城系统购物车管理的设计.doc_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

本科毕业论文 (设计) 题 目:网上书城系统购物车管理的设计 学 院:信息工程学院 专 业:计算机科学与技术 姓 名: 指导教师:郭振波 二零一零年 六月七日 网上书城系统购物车管理的设计 摘 要 网上书城是一种基于 WEB 的,目前最流行的一种电子商务平台。在这样一个互联 网高速发展的今天,不仅购物网站上要提供质量可靠,物美价廉的商品,而且还要提 供安全可靠的网络服务。系统实现用到的技术有: jsp、servlet、struts、hibernate Ajax 等现阶段比较流行的技术。我们在设计系 统时,不仅要考虑形同的性能问题,也要考虑到系统与用户的交互界面的友好性。系 统由两子系统构成,分别是交易子系统和管理子系统。利用网络和数据库技术,结合 目前硬件性能普遍提高与宽带网大力建设的有利优势,应用 Active Server Page 技 术和采用 MySQL 数据库管理系统,开发了基于 B/S 模式的网上购物系统。 个人主要完成购物车管理模块,使用单例模式确保每个登陆用户分配唯一购物车 对象,使用 Session 来保存购物车对象。对购物车的操作,主要使用 Ajax 技术,采 用异步交互的方式为用户实现了友好的交互界面。 关 键 字 :网上书城 Ajax 技术 Struts2 B/S 模式 II Abstract BookSaling Online is based on web, the plot owner to the housing itself artisticly, the quality requirement is more and more high, simultaneously also requested to the plot property service and the management high.Like this requests the plot superintendent to carry on macroscopic and the microscopic careful management in which best means is realizes with the computer operation plot estate management system to the plot property management, the secrecy is bad, moreover the time one long also can produce the massive documents and the data, like this to searches, the renewal and the maintenance has brought many difficulties.The system contains two subsystems .came with the computer system to the plot estate management already to become the necessity. Using the network and the data bank technology, the union the hardware price generally falls at present the advantageous superiority which constructs vigorously with the broadband networks, technology and uses the Access database system module using Active Server the Page to constitute the test application service system, we have developed based on B/S pattern multiuser plot property system this procedure. Key words: BookSaling Online ajax techonology struts2 B/S III 目目 录录 1 1 引言引言 .1 1 1.1 选题背景及意义.1 1.2 系统概述.2 1.2.1 系统功能.2 1.2.2 系统实现.2 1.3 技术背景.3 1.3.1 面向对象的软件开发 .3 1.3.2 Java 技术 .3 1.3.3 B/S 模式与 C/S 模式 .4 1.3.4 Servlet 技术与 JSP 技术 .5 1.3.5 MVC 框架 .5 1.3.6 Struts2 框架 .6 1.3.7 Ajax 技术 .7 1.3.8 Hibernate 技术 .7 1.4 开发工具以及发布环境.7 1.4.1 系统开发环境.7 2 2 需求分析需求分析 .9 9 2.1 运行环境.9 2.2 建立用例模型.9 2.2.1 系统前台用例.9 2.2.2 系统后台用例 .10 2.3 系统前台数据流描述.11 2.4 系统设计的一般原则.12 3 3 系统分析系统分析 .1414 3.1 系统可行性分析.14 3.1.1 技术可行性.14 3.1.2 操作可行性.14 3.1.3 法律可行性.14 3.2 系统需求分析 .14 3.2.1 客户端的需求分析.14 4 4 系统设计系统设计 .1515 4.1 系统模块设计.15 4.2 系统设计思想 .15 4.3 系统主要模块的视图设计.16 4.4 系统核心部分的设计.17 5 5 系统详细设计与实现系统详细设计与实现.1818 5.1 请求处理流程图.18 IV 5.2 表结构设计 .18 5.3 程序的设计与代码实现.22 5.3.1 程序代码包组织结构 .22 5.3.2 个人模块-购物车管理 .24 6 6 总结总结 .3030 致谢致谢 .3131 参考文献参考文献 .3232 1 1 引言 随着计算机科学技术的发展,计算机科学日渐成熟,其强大的功能已为人们深刻认 识,它已进入社会各个领域并发挥着越来越重要的作用。在当今社会,越来越多的行业 都采用计算机及网络技术来管理或处理事务,以便提高工作效率。电子商务作为一种新 型的贸易方式,极大地促进了全球经济贸易的发展,同时也正在改变人们的生活方式和思 想观念。一种全新的购物理念开始形成并逐步发展。目前,已有一些非常成熟的电子商 务平台,如 eBAY,阿里巴巴等在线交易平台。通过这些在线交易平台,每个商人都可以 足不出户地将自己的商品出售,而客人则可以在电脑前购买自己心仪的商品。本系统就 是在已有电子商务平台的引导下实现了订购平台,系统分为前台用户模块和和后台用户 模块两个功能模块,系统前台具有客户登陆、浏览和购物等功能;后台具有图书的管理、 销售的管理、会员的管理等功能并且界面简单、操作简便。 1.1 选题背景及意义 近年来,随着 Internet 的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并进 入传统的流通领域。于是电子商务开始流行起来,一种全新的购物理念开始形成并逐步 发展。目前,已有一些非常成熟的电子商务平台,如 eBAY,阿里巴巴等在线交易平台。 通过这些在线交易平台,每个商人都可以足不出户地将自己的商品出售,而客人则可以 在电脑前购买自己心仪的商品。随着电子商务相关规范的成熟,电子商务极有可能取代 传统的商务活动。 我们已经可以确信电子商务毋庸置疑是未来的发展方向。但是电子商务却还没有一 个标准的定义。Intel 公司认为:电子商务=电子市场电子交易电子服务;IBM 认为: 电子商务=web;HP 公司则说:“电子商务是通过电子化的手段来完成商业贸易活动的一 种方式。 ”电子商务,顾名思义是指在互联网上进行的电子化的商务活动。从狭义上看, 电子商务也就是电子交易,主要指利用 Web 提供的通信手段在网上进行交易活动,包括 通过 Internet 买卖产品和提供服务。而从广义上讲,电子商务还包括企业内部商务活动, 如生产、管理、财务等以及企业间的商务活动,它不仅仅是硬件和软件的结合,更是把 买家、卖家、厂家和合作伙伴在 Internet、Intranet 和 Extranet 上利用 Internet 技术与现有 的系统结合起来开展的业务活动。 2 电子商务订购平台系统正是一种具有交互功能并且实现了简单后台管理的商业交易 与信息管理系统。它向用户提供友好交互界面,可以足不出户实现商品浏览和具体了解, 在短时间内订购并获得商品。同时也为商家提供了对商品的管理功能,让商家了解到商 品和订单情况。 1.2 系统概述 1.2.1 系统功能 电子商务通常是指是在全球各地广泛的商业贸易活动中,在因特网开放的网络环境 下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸活动,实现消费者的 网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活 动和相关的综合服务活动的一种新型的商业运营模式。 本电子商务订购系统主要分为了两大功能:用户交互和后台管理。用户交互主要实 现用户在本系统的注册、登陆、浏览商品、购买商品、填写订单,也就是实现了用户的 购物订购的全过程。后台管理主要实现了管理员对该系统的管理,包括对注册用户的管 理、对订单的管理、对商品的管理。 本系统要求用户参与购买商品之前,必须注册系统,并进行 email 的激活验证,注册 的用户可以根据注册的 email 和密码登陆系统,进行商品的选购的提交订单。管理员通过 用户名和密码管理登录,然后进行用户的管理,订单的管理和商品的管理。未注册用户 可以浏览商品,在购买之前必须注册并登陆本系统。非管理员不能进入管理界面。 1.2.2 系统实现 本系统以 struts2 组件做为系统开发的框架,采用 MVC 分层模式,其中采用 JSP 方 式来生成前台的显示页面,使用 MySql 做为后台的数据库服务器,使用 Hibernate 访问 数据库,使用了 Ajax 的异步请求实现动态页面效果,以及运用了面向对象的设计思想进 行开发实现的 B/S 系统。具有友好的前台界面,易操作性,易管理,高稳定性,和高 安全性等特点。在本系统中,顾客可以很方便的注册成为会员,对商品进行浏览检索, 查看商品的详细资料,然后根据各人的喜好购买心仪的商品。系统会自动为顾客生成订 单,按照顾客所填写的信息提交订单并发货。系统管理员则可以对现有的商品进行添加 和编辑,审查已注册的用户并对提交的订单进行处理。 3 1.3 技术背景 1.3.1面向对象的软件开发 在软件开发中,有两种不同的软件设计和开发的理念;结构化泛型和面向对象泛型。 所谓理念就是进行设计和开发的整套思考方法。这种思考方法与软件开发所使用的工具 本身是没有关系的。 在结构化泛型的软件应用系统开发中,一个软件由两个互不相关的部分组成。一个部 分面向流程,成为流程模型,描述了产品的所有行为,包括流程性和数据性的;另一部 分面向数据体系,称为数据模型,描述了在产品行为中需要操作的数据。在这样的软件 组织结构中,数据与行为被隔离开,数据模型仅仅起到组织数据和保护数据的作用。流 程模型通过对数据模型进行操作完成所有的工作。流程模型需要同时了解数据模型代表 的含义、操作数据模型的方法和规则,以及软件工作的方式。 面向对象泛型的软件应用系统开发中,行为和数据被统一在对象模型中。一个对象同 时包括了用语描述该对象所需要的数据,以及这个对象可以进行的操作。这些操作会根 据需要访问或修改描述对象所用到的数据。在这样的结构中,一个对象是很完善的一个 个体,是数据和操作的统一体,通过对对象调用不同的操作就可以完成产品的行为。 Java 语言和 java 平台是采用面向对象技术开发软件场频最好的选择之一,除了 java 之外微软的.net 平台也是一个选择。 1.3.2 Java 技术 Java 是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向 Internet 的开发工具。自从 1995 年正式问世以来,Java 的快速发展已经让整个 Web 世界 发生了翻天覆地的变化。在早期,Java 比较多的用在浏览器上,插入到网页中(即是 Java Applet 程序),成为最灵活、最强大的网页多媒体的载体,但由于 Java 虚拟机相对于个人 电脑而言,有占用资源大,安全性相对较差等缺点,Applet 逐渐的被后起之秀 Flash 所替 代,但随着 Java Servlet 的推出,Java 在电子商务方面开始崭露头角,最新的 JSP(Java Server Page)技术的推出,更是让 Java 成为基于 Web 的应用程序的首选开发工具,目前的 Java 技术已成为所有大型电子商务项目的必然选择。 为了对 java 技术的使用方向和范围进行区分,Sun 公司对 java 技术进行了划分,根 据这个划分 Java 平台有个三个版本。其核心是使用于桌面系统的 Java2 平台标准版(Java 2 Platform Standard Edition,J2SE) 。它面向标准的软件开发,同时作为 java 语言的核心平 台。另一个是适用于小型信息化设备和智能 4 卡的 Java2 平台微型版(Java 2 Platform Micro Edition,J2ME) ,它是面向嵌入式的信息产 品。最后是适用于创建服务器应用程序和服务器的 Java 2 平台企业版(Java2 Platform Enterprise Edition,J2EE) ,专门针对企业级的软件开发和应用。 图 1-1 Java 的三个主要平台 1.3.3 B/S 模式与 C/S 模式 C/S 和 B/S 是当今世界开发模式技术架构的两大主流技术。C/S 是美国 Borland 公司 最早研发,B/S 是美国微软公司研发。目前,这两项技术以被世界各国所掌握,国内公司 以 C/S 和 B/S 技术开发出产品也很多。这两种技 术都有自己一定的市场份额和客户群, 各家企业都说自己的管理软件架构技术功能强大、先进、方便,都能举出各自的客户群 体,都有一大群文人墨客为自己摇旗呐 喊,广告满天飞,可谓仁者见仁,智者见智。 什么是 C/S 结构?C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。 它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到 Client 端和 Server 端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是 Client/Server 形式的两层结构,由于现在的软件应 用系统正在向分布式的 Web 应用发展, Web 和 Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件; 因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的 逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。 什么是 B/S 结构? 5 B/S(Browser/Server)结构即浏览器和服务器结构。它是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结 构。在这种结构下,用户工作界面是通过 WWW 浏览 器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端 (Server)实现,形成所谓三层 3-tier 结构。这样就大大简化了客户端电脑载荷,减轻了 系统维护与升级的成本和工作量,降低了用户的总体成本(TCO) 。 C/S 架构软件的优势与劣势:应用服务器运行数据负荷较轻;数据的储存管理功能 较为透明;C/S 架构的劣势是高昂的维护成本且投资大。 B/S 架构软件的优势与劣势:维护和升级方式简单;成本降低,选择更多;应用服务 器运行数据负荷较重。而且 C/S 一般建立在专用的网络上, 小范围里的网络环境,局域 网之间再通过专门服务器提供连接和数据交换服务。B/S 建立在广域网之上的,不必是 专门的网络硬件环境,例如电话上网,租用设备,信息自己管理,有比 C/S 更强的适应 范围,一般只要有操作系统和浏览器就行。所以本次毕业设计主要选 B/S 为设计结构。 1.3.4 Servlet 技术与 JSP 技术 Servlet 是一种独立于平台和协议的服务器端的 Java 应用程序,可以生成动态的 Web 页面。Servlet 是使用 Java Servlet 应用程序设计接口及相关类和方法的 Java 程序,它在 Web 服务器上或应用服务器上运行并扩展了该服务器的能力。Java Servlet 对于 Web 服务 器就好像 Java Applet 对于 Web 浏览器。Applet 装入 Web 浏览器并在 Web 浏览器内执行, 而 Servle 则是装入 Web 服务器并在 Web 服务器内执行。Java Servlet API 定义了 Servlet 和 服务器之间的一个标准接口,这使得 Servlet 具有跨服务器平台的特性。Servlet 通过创建 一个框架扩展服务器的能力,采用请求-响应模式提供 Web 服务。 与传统的 CGI(Common Gateway Interface 公用网关接口)和许多其他类似 CGI 的技术相比, Java Servlet 有许多优点。Servlet 具有很高的效率;更容易使用;功能更强大;具有更好 的可移植性。Web 服务器的辅助应用,处理特定的用户请求,并返回响应。web 服务器, 这里的服务器不是硬件概念,常用的 web 服务器有 Tomcat,Jboss 等。 Tomcat 是一个用 java 语言编写的 web 服务器,所以需要有相应的 java 运行环境, 也就是 JVM,还要配置 tomcat 的具体路径。 JSP 本身就是预先被编译成 Servlet,然后再运行的,而且大型的 Web 应用程序的开 发需要 Java Servlet 和 JSP 配合才能完成。由于考虑到 JSP 的先进性和普遍性,本次毕业 设计选用 JSP 作为主要开发工具来实现网上书店。 6 1.3.5 MVC 框架 MVC(应用观察者模式的框架模式)是 Model-View-Controller 的简称,即模型-视图 -控制器。其核心思想是将程序按其功能和职责不同分成既独立而又能协同工作的 3 个部 分。 M: Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层 (Independent of presentation)。 V: View(Presentation layer),视图,通过客户端数据类型显示数据,并回显模型层的执 行结果。 C: Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向, 接受视图层发出的事件,并重绘视图。 MVC 框架的实现模型:JSP+Servlet+JavaBean,以控制为核心,JSP 只负责显示和收 集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务 类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是 使用这种 MVC 的实现模式。 1.3.6 Struts2 框架 2000 年 Craig R.McClanahan 把自己根据 MVC 模式编写的 application Framework 源码 捐给 Apache 基金会,作 ApacheJakarta 项目的一个组成部分,这些源码成为了 Struts Framework 的前身。 Struts 是使用 MVC 的实现: Model:Struts 没有提供 model 类。这个商业逻辑必须由 Web 应用程序 的开发者以 JavaBean 或 EJB 的形式提供 View:Struts 提供了 action form 创建 form bean, 用于在 controller 和 view 间传输数 据。此外,Struts 提供了自定义 JSP 标签库,辅助开发者用 JSP 创建交互式的以表单为基 础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言, 可用于 JSP 中。 Controller:Struts 提供了一个核心的控制器 ActionServlet,通过这个核心的控制器来 调用其他用户注册了的自定义的控制器 Action,自定义 Action 需要符合 Struts 的自定义 Action 规范,还需要在 struts-config.xml 的特定配置文件中进行配置,接收 JSP 输入字段 形成 Action form,然后调用一个 Action 控制器。Action 控制器中提供 model 的逻辑接口。 在 web 应用启动时就会加载初始化 ActionServlet,ActionServlet 从 struts-config.xml 文件中 7 读取配置信息,把它们存放到各种配置对象当 ActionServlet 接收到一个客户请求时,固定流 程。 1.3.7 Ajax 技术 AJAX(Asynchronous JavaScript and XML)其实是多种技术的综合,包括 Javascript、XHTML CSS、DOM、XML、XSTL、XMLHttpRequest。其中:使用 XHTML 和 CSS 标准化呈现,使用 DOM 实现动态显示和交互,使用 XML 和 XSTL 进行数据 交换与处理,使用 XMLHttpRequest 对象进行异步数据读取,使用 Javascript 绑定和处理 所有数据。 与传统的 Web 应用不同,AJAX 采用异步交互过程。AJAX 在用户与服务器之间引 入一个中间媒介,从而消除了网络交互过程中的处理等待处理等待缺点。用户的 浏览器在执行任务时即装载了 AJAX 引擎。AJAX 引擎用 JavaScript 语言编写,通常藏在 一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。AJAX 引擎允许用户与 应用软件之间的交互过程异步进行, 独立于用户与网络服务器间的交流。现在,可以 用 Javascript 调用 AJAX 引擎来代替产生一个 HTTP 的用户动作,内存中的数据编辑、页 面导航、数据校验这些不需要重新载入整个页面的需求可以交给 AJAX 来执行。 1.3.8 Hibernate 技术 Hibernate 是一种 OR/M(object relation mapping)对象关系映射工具,是一个可以自 动的根据 xml 完成对象关系映射,并持久化到数据库的开源组件,是对 JDBC 的封装, 主要负责 java 对象的持久化。 对象持久化就是将内存中以对象形式存在的数据转存到外部持久设备中;在适当的时 候可以方便的完整的将数据恢复到内存中(双向的数据转化) 。 进行对象持久化的原因是:物理上(看基本现象的) 1)内存不能持久化保存数据 2)内存容量有限 3)共享信息(信息对于信息系统来说是先导性要素) 4)管理(信息的管理:安全、备份、权限) 5)大规模的检索 Hibernate 的工作原理:封装了 JDBC,提供更简单的抽象的 API 给业务层调用,保 证业务层是面向对象的。 8 1.4 开发工具以及发布环境 1.4.1 系统开发环境 操作系统: Windows 7 虚拟机:jdk-6-win-i586 浏览器:FireFox2.0 或 IE8 Web 服务器:Apache Tomcat 6.0 数据库:MySql 5.5 IDE 工具:MyEclipse7.5(集成 Eclipse3.4) 9 2 需求分析 本系统初步预想使用 Struts+Hibernate+Ajax+J2EE 的技术完成的一个网上在线购物系 统,模仿当当()制作完成。 这是一个网上在线购物系统(B2C),系统需要提供网上购物的功能,用户能够随意 浏览商品,并能获取商品的详细信息,如图片预览、商品描述等。系统能够向用户提供 一些浏览信息,让用户能够快速的了解系统出售商品信息,如特价促销,店长推荐,排 行榜,新上架商品等。系统能够提供 3 级分类商品,系统能够提供品牌分类。系统能够 提供公告信息,让用户快速了解系统的通告信息。系统能够提供论坛的方式,供用户发 表对商品的评论的功能,系统能够提供搜索功能,让用户快速了解他需要的产品。用户 在浏览 3 级分类商品的时候,需要体现高级筛选功能,如不同方式浏览商品信息、按价 格排序商品,按规格浏览商品等功能。用户购物需要注册成为本系统的会员,并能随时 修改自己的信息(如收货信息等)。会员能够收藏自己喜欢的商品,并能随时关注该商 品。会员能够查看已购买的商品,会员能够完成与论坛的相关功能。 下面的这些功能需要后期实现。系统可以分为不同权限的管理员,管理本系统,如 商品管理员、系统管理员等。系统管理员可以配置一些信息管理本系统。系统可以管理 商品(添加、删除、修改、查询)。系统可以管理商品分类(添加、删除、修改、查询) 。系统可以管理品牌(添加、删除、修改、查询)。系统可以管理论坛,根据商品分类 创建论坛分类。自定义分类等。系统可以的论坛管理功能等,此处不再详细累赘。系统 可以进行订单管理功能,系统可以进行用户管理功能,公告管理管理,模板管理功能, 支付用送货管理。 2.1 运行环境 操作系统:Windows XP,Windows 2000,Linux,Unix 等操作系统 数据库:MySQL 5.0 WEB 服务器:Tomacat 5.x 开发工具:MyElclipse 5.5 2.2 建立用例模型 2.2.1 系统前台用例 根据上述需求分析,系统前台拥有 2 种用户,即浏览使用本系统的顾客,当顾客注 10 册为本系统的会员时,即本系统的第 2 种。 功能描述如下:浏览、注册、搜索、购物、登陆、消息功能、个人资料修改、收货 地址、积分交易、订单查看等。 会员与用户交互的用例。如图 2-1 搜索购物 收货地址 积分交易订单查看 消息功能 个人资料修改登陆 会员 注册 顾客 浏览 图 2-1 前台用例图 2.2.2系统后台用例 根据上述需求分析,系统后台拥有多种用户,简单描述如下:商品管理员、系统管理 员等。由于时间关系,本系统后台前期可能不做开发。预想在后期专门开发权限管理栏 目,可以根据需要产生多种管理员以分配不同的权限进行管理。 功能描述如下:商品管理、商品分类管理、品牌管理、订单管理、送货方式管理、会 员管理、公告管理、模板管理、论坛分类管理、帖子管理、系统配置、支付管理等。 系统管理员与系统交互用例图,系统管理员继承商品管理员,同时也拥有商品管理员 的那些功能。如图 2-2: 11 商品分类管理品牌管理商品管理订单管理 商品管理员 公告管理支付管理模板管理 会员管理论坛分类管理 帖子管理系统配置 系统管理员 送货方式管理 图 2-2 后台用例图 2.3 系统前台数据流描述 (一)顾客的浏览功能 通过这些页面的浏览,顾客能够理解本商城的商品信息,并且提供顾客一个交流 的平台。 (二)顾客的搜索功能 1. 搜索功能 需要传递搜索的分类 id,搜索的关键词,搜索后显示的页面(默认为第 1 页) , 分页显示时使用 Ajax 技术。 2. 模糊搜索功能 与上类似,模糊搜索功能的原理:单词匹配商品名称和商品介绍,如果找到匹 配的结果就显示出来。 (三)顾客的购物功能 1. 顾客点击商品信息页的购买按钮,传递商品 id 系统,系统根据客户传递的值 将商品放入购物车中,然后在本页面显示购买成功提示,该提示 2 秒后自动 消失。顾客依此往复,添加产品。 2. 顾客可以修改购买商品的数量,此处使用 Ajax 技术,动态刷新页面及商品小 计金额和总金额。 3. 顾客可以删除购物车中的商品,此处仍然使用 Ajax 技术。 4. 顾客点击计算按钮的时候,如果用户已经登陆,弹出确认订单页面,顾客确 认无误后,点击下一步,弹出发货地址页面,否则转到登陆页面。 12 (四)会员的收货地址功能 1. 如果已经填写过收货地址,则可选择是否使用旧地址。 2. 会员可以动态选择所在省市区,使用 Ajax 技术。 3. 省市区单独建表,以后可以维护。 4. 服务端验证。 (五)顾客的注册功能 1. 使用本地校验和服务器校验顾客的注册信息。 2. 提供验证码验证,尽量减少非人为的注册。 3. 使用 Ajax 技术动态显示注册过程中信息,如用户名(个人邮箱)是否被占用、 验证码正确否、2 次密码输入正确否。 4. 注册成功,则转到邮箱验证码激活页面 (六)会员的登陆功能 会员根据注册用户名和密码登陆,点击登陆按钮,服务器端检测顾客邮箱是 否激活,是则转到主页面,并在主页面显示可以已经登陆信息,否则转到邮箱激 活页面。 (七)会员的个人资料修改功能 提供编辑个人档案、编辑个人签名、编辑个人头像、论坛设置、更改密码功 能。 (八)会员的积分交易功能 会员注册成功,默认积分为 0,根据用户购买记录,每次获得一定的积分。 (九)会员的订单查看功能 在等待管理员确认订单之前,用户可以取消该订单。 2.4 系统设计的一般原则 在软件设计的时候,一般我们要遵循一下原则: (1)稳定性。整个系统应能稳定运行,硬件配置的局部改变不会影响整体的正常运 行,其它系统的差错不会导致办公自动化系统无法正确运作。 (2)准确性。系统管理员按操作指南操作产生的权限数据,和所有前台用户的操作与 数据库原定产生变化的实际状态应严格保持一致,杜绝错误记录、数据错位等情况的出 现。 13 (3)开放性。全部模块工作于 Windows 平台之上,在硬件保证兼容的基础上,系统 应保证在所有 Windows 环境下的处理能力。 (4)安全性。所有数据定时备份,错误页面的出现由系统自动记录 LOGO 文件,以备 查验。在数据库中预留一个或多个最高权限帐户名及密码,避免用户误操作而造成不必 要的损失。 (5)可扩展性。如果需增加新的业务品种,再次开发不需更改原有系统的源代码, 原有系统对扩展的部分一般不具有依赖性。 (6)可维护性。界面风格或其它可能的参数化改变(如增加新功能等)不需要重新 编写源代码,用户可以自己完成。 (7)独立性。每一个功能模块尽量独立,减少与其它模块之间的耦合性,尽可能做 到按客户的需求可以选择安装那些模块,不安装那些模块。 (8)易使用性。办公自动化系统的界面与操作人员的交互性好,与主机间使用 Browser/Server(浏览器/服务器)结构。 (9)先进性。在保证稳定的前提下,尽量使用国际上流行的技术与概念,使系统在 国内处于先进水平。 14 3 系统分析 3.1 系统可行性分析 3.1.1 技术可行性 采用 struts2 和 jsp 实现的电子商务订购系统,具有可视化的优点,能大大提高软件 开发的效率,缩短开发周期,具有很大的应用潜力。在开发中使用了 struts 的强大框架 技术和 jsp 的视图效果,使用 ajax 实现动态异步效果,建立以 MySQL 数据库系统的核心 动态网页,实现电子商务系统前台购物和后台管理等功能模块。 3.1.2 操作可行性 通用的 Web 浏览器降低了操作复杂度,遵循操作员的操作习惯,使得用户在使用时, 只要自如的按习惯进行操作,即可轻松完成工作。因此,从操作角度衡量,本系统的开 发方案也是可行的。 3.1.3 法律可行性 电子商务订购系统只是为提供企业与客户之间沟通与交流而搭建的一个平台,信息 合法,不涉及侵权等法律法规。在网络迅速发展的现在,这种商业模式在逐步完善。 3.2 系统需求分析 网上产品系统开发意图:为了更好地适应市场需求,缓解各电子产品的地域限制, 为消费者实现更便捷的方法,利用网上产品统和计算机设备实现网上查阅选购产品购买 邮寄产品管理用户管理、订单管理等,提高工作效率,增加产品销量,增加用户,便于 管理,使用户易于挑选和购买。 3.2.1 客户端的需求分析 在客户端,主要需要实现用户的注册,登录,浏览商品,选购商品等。 用户可以注册本系统, 可以进行商品的浏览和选购,用户可以购书,也可以查看图书信息,查询图书可以通过关键字,也可 以通过分类查询。当用户找到自己需要的书籍以后可以选择购买,也可以查看图书的详细信息。这时 候如果用户选择购买的话,他可以选择购买的数量,并将书籍放到购物车中,这个时候用户就可以去 查看购物车信息,购物车中罗列了用户购物的清单(订单) ,用户可以查看订单信息,修改订单信息。 这时用户可以提交购物车到后台结帐,也可以选择继续购书。继续购书就是按照前面的流程在循环的 走下去。用户提交购物车以后,订单就不能再被用户修改了。这个时侯用户的流程就走完了。用户可 以继续进行商品的选购或者退出系统。 15 4 系统设计 4.1 系统模块设计 根据对本系统的需求分析,系统在客户端要实现用户注册、用户登录、商品浏览、 订单填写的,在后台管理要实现对注册用户、商品和订单的管理。系统实现的总体的模 块如图 4-1 所示: 网上书城 用 户 管 理 员 用 户 注 册 用 户 登 录 浏 览 商 品 购 买 产 品 用 户 管 理 订 单 管 理 产 品 管 理 填 写 订 单 图 4-1 系统主要模块 4.2系统设计思想 交易系统和管理系统在系统架构方面完全一致,采用 4 层结构,主要包括:表现层、 控制层、业务层、持久层。 表现层:主要负责用户交互和结果显示,交易系统和管理系统有不同的 URL 入口界 面。 控制层:主要负责系统的访问控制、数据加载和注销,是系统的核心控制单元。控 制层通过系统描述来组织工作。 业务层:实现了交易系统和管理系统的主要业务逻辑,是系统主要的运算单元。 持久层:实现了静态数据和数据库数据的持久化管理,为业务层提供数据服务,是系 统进行数据操作的统一界面。 在系统中使用 Struts 作为系统的整体基础架构,负责 MVC 的分离,在 Struts 框架 的模型部分,利用 Hibernate 框架对持久层提供支持,业务层用提供业务逻辑方发。具 16 体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的 Java 对象,然后编写基本的 DAO 接口,并给出 Hibernate 的 DAO 实现,采用 Hibernate 架构实现的 DAO 类来实现 Java 类与数据库之间的转换和访问最后由 Spring 完成业务逻 辑。 系统的基本业务流程是:在表示层中,首先通过 JSP 页面实现交互界面,负责传送 请求(Request)和接收响应(Response),然后 Struts 根据配置文件(struts-config.xml) 将 ActionServlet 接收到的 Request 委派给相应的 Action 处理。在业务层中,管理服务 组件的 Spring IoC 容器负责向 Action 提供业务模型(Model)组件和该组件的协作对象数 据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和 保证数据的完整性。而在持久层中,则依赖于 Hibernate 的对象化映射和数据库交互, 处理 DAO 组件请求的数据,并返回处理结果,不仅实现了视图、控制器与模型的彻底分 离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需 很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。 而且由于不同层之间耦合度小,有利于团队成员并行工作大大提高了开发效率。 4.3 系统主要模块的视图设计 系统的视图设计是系统直接展现给用户的界面,有好的用户界面设计会给用户带来更 好的体验。在本系统中,根据技术的支持,我选择使用 jsp 来设计实现视图层的界面设 计。Jsp 可以很好的与 Ajax 技术和 JavaScript 技术结合起来完成动态的页面效果。Ajax 技术的异步请求可以减少用户的等待时间,实现无刷新的更新,给用户有好体验。在视 图设计中还将使用的是美工知识,也就是 css 样式的使用,在 jsp 中引如 css 样式设计 这样可以设计出页面的框架

温馨提示

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

评论

0/150

提交评论