毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc

上传人:仙人指路1688 文档编号:3979368 上传时间:2023-03-30 格式:DOC 页数:39 大小:3.80MB
返回 下载 相关 举报
毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc_第1页
第1页 / 共39页
毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc_第2页
第2页 / 共39页
毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc_第3页
第3页 / 共39页
毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc_第4页
第4页 / 共39页
毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于JSP的电子商务订购平台设计与实现.doc(39页珍藏版)》请在三一办公上搜索。

1、电子商务订购平台计算机科学与技术专业摘要近年来,随着Internet的蓬勃发展,电子商务也在迅速崛起。电子商务利用Internet 提供的信息网络在网上进行的商务活动,改变了传统的买卖双方面对面的交流方式,也打破了旧有工作经营模式,它通过网络使企业面对整个世界,为用户提供每周 7 天,每天 24 小时的全天候服务。从而为企业的经营活动,迎来了崭新的电子商务时代!系统主要应该实现的功能有用户的注册、登陆、修改密码、浏览商品、购买商品以及系统的添加商品、商品展示等管理功能。系统设计中主要采用的技术为:JSP、Struts2t、J2EE、B/S。关键词电子商务;网络;JSP ;Struts2Elec

2、tronic Commerce Orders Platform Computer Science and Technology MajorAbstract: In recent years, with the rapid development of Internet, electronic commerce is also booming. Use of Internet e-commerce to provide online information network in the business, changed the traditional buyers and sellers in

3、teract face to face, it also breaks the old business model work, it is through the network so that enterprises face the whole world, to provide users a week 7 days, 24 hours a day. So as the business activities and ushered in the new age of electronic commerce! The main functions of the system shoul

4、d implement a user registration, login, change passwords, view products, purchase products and system to add products, merchandise display and other management functions. Mainly used in system design technology: JSP, Struts2t, J2EE, B / S.Key words: Electronic commerce; Network; JSP; Struts2目录前 言11

5、系统概述11.1 选题背景及意义11.2 系统概述21.2.1系统功能21.2.2系统实现21.3 技术背景21.3.1面向对象的软件开发21.3.2 Java技术31.3.3 B/S模式与C/S模式41.3.4 Servlet技术与Jsp技术51.3.5 MVC框架51.3.6 Struts框架61.3.7 Ajax技术71.3.8 Hibernate技术71.4 开发工具以及发布环境81.4.1 系统开发环境81.4.2 系统发布环境82 系统分析82.1 系统可行性分析82.1.1 技术可行性82.1.2 操作可行性82.1.3 法律可行性92.2 系统需求分析92.2.1 客户端的需求

6、分析92.2.2 后台管理的需求分析103 系统设计113.1 系统模块设计113.2 系统设计思想113.3 系统主要模块的视图设计123.4 系统核心部分的设计123.4.1 客户端的设计123.4.2 后台的管理设计134 系统详细设计与实现144.1 数据库设计与实现144.1.1ER图144.1.2 数据实体描述以及表结构154.1.3 数据库的建表的实现194.2 客户端的设计与代码实现214.2.1商品浏览模块214.2.2 用户登录模块234.2.3 用户注册模块244.2.4 购物车模块264.2.5 订单模块274.3 后台管理的设计与代码实现294.3.1 后台管理的登录

7、模块294.3.2 用户管理模块304.3.3 订单管理模块314.3.4 商品管理模块32致谢36前 言随着计算机科学技术的发展,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入社会各个领域并发挥着越来越重要的作用。在当今社会,越来越多的行业都采用计算机及网络技术来管理或处理事务,以便提高工作效率。电子商务作为一种新型的贸易方式,极大地促进了全球经济贸易的发展,同时也正在改变人们的生活方式和思想观念。一种全新的购物理念开始形成并逐步发展。目前,已有一些非常成熟的电子商务平台,如eBAY,阿里巴巴等在线交易平台。通过这些在线交易平台,每个商人都可以足不出户地将自己的商品出售,而客人则

8、可以在电脑前购买自己心仪的商品。本系统就是在已有电子商务平台的引导下实现了订购平台,系统分为前台用户模块和和后台用户模块两个功能模块,系统前台具有客户登陆、浏览和购物等功能;后台具有图书的管理、销售的管理、会员的管理等功能并且界面简单、操作简便。1 系统概述1.1 选题背景及意义近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并进入传统的流通领域。于是电子商务开始流行起来,一种全新的购物理念开始形成并逐步发展。目前,已有一些非常成熟的电子商务平台,如eBAY,阿里巴巴等在线交易平台。通过这些在线交易平台,每个商人都可以足不出户地将自己的商品出售,而客人则可以在电脑

9、前购买自己心仪的商品。随着电子商务相关规范的成熟,电子商务极有可能取代传统的商务活动。今天,我们已经可以确信电子商务毋庸置疑是未来的发展方向。但是电子商务却还没有一个标准的定义。Intel公司认为:电子商务=电子市场电子交易电子服务;IBM认为:电子商务=web;HP公司则说:“电子商务是通过电子化的手段来完成商业贸易活动的一种方式。”电子商务,顾名思义是指在互联网上进行的电子化的商务活动。从狭义上看,电子商务也就是电子交易,主要指利用Web提供的通信手段在网上进行交易活动,包括通过Internet买卖产品和提供服务。而从广义上讲,电子商务还包括企业内部商务活动,如生产、管理、财务等以及企业间

10、的商务活动,它不仅仅是硬件和软件的结合,更是把买家、卖家、厂家和合作伙伴在Internet、Intranet和Extranet上利用Internet技术与现有的系统结合起来开展的业务活动。电子商务订购平台系统正是一种具有交互功能并且实现了简单后台管理的商业交易与信息管理系统。它向用户提供友好交互界面,可以让互用足不出户实现商品浏览和具体了解,在短时间内订购并获得商品。同时也为商家提供了对商品的管理功能,让商家了解到商品和订单情况。1.2 系统概述1.2.1系统功能电子商务通常是指是在全球各地广泛的商业贸易活动中,在因特网开放的网络环境下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸

11、活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。本电子商务订购系统主要分为了两大功能:用户交互和后台管理。用户交互主要实现用户在本系统的注册、登陆、浏览商品、购买商品、填写订单,也就是实现了用户的购物订购的全过程。后台管理主要实现了管理员对该系统的管理,包括对注册用户的管理、对订单的管理、对商品的管理。 本系统要求用户参与购买商品之前,必须注册系统,并进行email的激活验证,注册的用户可以根据注册的email和密码登陆系统,进行商品的选购的提交订单。管理员通过用户名和密码管理登录,然后进行用户的管理

12、,订单的管理和商品的管理。 未注册用户可以浏览商品但不能进行商品的购买,在购买之前必须注册并登陆本系统。非管理员不能进入管理界面。1.2.2系统实现本系统以struts2组件做为系统开发的框架,采用MVC分层模式,其中采用JSP方式来生成前台的显示页面,使用MySql做为后台的数据库服务器,使用Hibernate访问数据库,使用了Ajax的异步请求实现动态页面效果,以及运用了面向对象的设计思想进行开发实现的B/S系统。具有友好的前台界面,易操作性,易管理,高稳定性,和高安全性等特点。在本系统中,顾客可以很方便的注册成为会员,对商品进行浏览检索,查看商品的详细资料,然后根据各人的喜好购买心仪的商

13、品。系统会自动为顾客生成订单,按照顾客所填写的信息提交订单并发货。系统管理员则可以对现有的商品进行添加和编辑,审查已注册的用户并对提交的订单进行处理。1.3 技术背景1.3.1面向对象的软件开发在软件开发中,有两种不同的软件设计和开发的理念;结构化泛型和面向对象泛型。所谓理念就是进行设计和开发的整套思考方法。这种思考方法与软件开发所使用的工具本身是没有关系的。在结构化泛型的软件应用系统开发中,一个软件由两个互不相关的部分组成。一个部分面向流程,成为流程模型,描述了产品的所有行为,包括流程性和数据性的;另一部分面向数据体系,称为数据模型,描述了在产品行为中需要操作的数据。在这样的软件组织结构中,

14、数据与行为被隔离开,数据模型仅仅起到组织数据和保护数据的作用。流程模型通过对数据模型进行操作完成所有的工作。流程模型需要同时了解数据模型代表的含义、操作数据模型的方法和规则,以及软件工作的方式。而面向对象泛型的软件应用系统开发中,行为和数据被统一在对象模型中。一个对象同时包括了用语描述该对象所需要的数据,以及这个对象可以进行的操作。这些操作会根据需要访问或修改描述对象所用到的数据。在这样的结构中,一个对象是很完善的一个个体,是数据和操作的统一体,通过对对象调用不同的操作就可以完成产品的行为。Java语言和java平台是采用面向对象技术开发软件场频最好的选择之一,除了java之外微软的.net平

15、台也是一个选择。1.3.2 Java技术Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。在早期,Java比较多的用在浏览器上,插入到网页中(即是Java Applet程序),成为最灵活、最强大的网页多媒体的载体,但由于Java虚拟机相对于个人电脑而言,有占用资源大,安全性相对较差等缺点,Applet逐渐的被后起之秀Flash所替代,但随着Java Servlet的推出,Java在电子商务方面开始崭露头角,最新的JSP(Java Server Page)技术

16、的推出,更是让Java成为基于Web的应用程序的首选开发工具,目前的Java技术已成为所有大型电子商务项目的必然选择。 为了对java技术的使用方向和范围进行区分,Sun公司对java技术进行了是擦好难过划分,根据这个划分Java平台有个三个版本。其核心是使用于桌面系统的Java2平台标准版(Java 2 Platform Standard Edition,J2SE)。它面向标准的软件开发,同时作为java语言的核心平台。另一个是适用于小型信息化设备和智能卡的Java2平台微型版(Java 2 Platform Micro Edition,J2ME),它是面向嵌入式的信息产品。最后是适用于创建

17、服务器应用程序和服务器的Java 2 平台企业版(Java 2 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技术开发出产品也很多。这两种技 术都有自己一定的市场份额和客户群,各家企业都说自己的管理软件架构技术功能强大、先进、方便,都能举出各自的客户群体,都有一大群文人墨客为自己摇旗呐 喊,广告

18、满天飞,可谓仁者见仁,智者见智。什么是C/S结构? C/S (Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到 Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应 用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩 展出新的应用系统。这也就是目前

19、应用系统的发展方向。什么是B/S结构? B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结 构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server) 实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。 C/S架构软件的优势与劣势:应用服务器运行数据负荷较轻;数据的储存管理功能较为透明;C/S架构的劣势是高昂的维护成本且投资大。B/S架构软件

20、的优势与劣势:维护和升级方式简单;成本降低,选择更多;应用服务器运行数据负荷较重。而且C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务。B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例如电话上网, 租用设备, 信息自己管理, 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行。所以本次毕业设计主要选B/S为设计结构。1.3.4 Servlet技术与Jsp技术Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面。Servlet是使用Java Servlet应用程序设计接口及相关类和方法

21、的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 S

22、ervlet有许多优点。Servlet具有很高的效率;更容易使用;功能更强大;具有更好的可移植性。Web 服务器的辅助应用,处理特定的用户请求,并返回响应。web服务器,这里的服务器不是硬件概念,而是软件,常用的web服务器有 Tomcat,Jboss等。 Tomcat是一个用java语言编写的web服务器,所以需要有相应的java运行环境,也就是JVM,还要配置tomcat的具体路径。JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。由于考虑到JSP的先进性和普遍性,本次毕业设计选用JSP作为主要开发工具来

23、实现网上书店.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),控制器,也就是视图层和模型层桥梁, 控制数

24、据的流向,接受视图层发出的事件,并重绘视图。 MVC框架的实现模型:JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。1.3.6 Struts框架2000年Craig R.McClanahan把自己根据MVC模式编写的 Application Framework 源码捐给Apache 基金会,作ApacheJakarta 项目的一个组成部分,这些源码成为了Struts Fram

25、ework的前身。Struts是使用MVC的实现:Model:Struts没有提供model类。这个商业逻辑必须由Web应用程序的开发者以JavaBean或EJB的形式提供View:Struts提供了action form创建form bean, 用于在controller和view间传输数据。此外,Struts提供了自定义JSP标签库,辅助开发者用JSP创建交互式的以表单为基础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,可用于JSP中。Controller:Struts提供了一个核心的控制器ActionServlet,通过这个核心的控制器来调用其他用户注册了的

26、自定义的控制器Action,自定义Action需要符合Struts的自定义Action规范,还需要在struts-config.xml的特定配置文件中进行配置,接收JSP输入字段形成Action form,然后调用一个Action控制器。Action 控制器中提供model的逻辑接口。在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象当ActionServlet接收到一个客户请求时,将执行如下流程. (1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求

27、路径无效信息; (2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中; (3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法; (4)如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象, 就表示表单验证成功; (5)ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用A

28、ction的execute()方法; (6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给 ActionForward对象指向的JSP组件; (7)ActionForward对象指向JSP组件生成动态网页,返回给客户;1.3.7 Ajax技术AJAX(Asynchronous JavaScript and XML)其实是多种技术的综合,包括 Javascript、XHTML CSS、DOM、XML、XSTL、XMLHttpRequest。其中:使用 XHTML 和 CSS 标准化呈现,使用 DOM 实现动态显示和交互,使

29、用 XML 和 XSTL 进行数据交换与处理,使用 XMLHttpRequest 对象进行异步数据读取,使用 Javascript 绑定和处理所有数据。 与传统的 Web 应用不同,AJAX 采用异步交互过程。AJAX 在用户与服务器之间引入一个中间媒介,从而消除了网络交互过程中的处理等待处理等待缺点。 用户的浏览器在执行任务时即装载了 AJAX 引擎。AJAX 引擎用 JavaScript 语言编写,通常藏在一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。AJAX 引擎允许用户与应用软件之间的交互过程异步进行, 独立于用户与网络服务器间的交流。 现在, 可以用 Javascript

30、 调用 AJAX引擎来代替产生一个 HTTP 的用户动作,内存中的数据编辑、页面导航、数据校验这些不需要重新载入整个页面的需求可以交给 AJAX 来执行。1.3.8 Hibernate技术Hibernate 是一种 OR/M(object relation mapping)对象关系映射工具,是一个可以自动的根据 xml 完成对象关系映射,并持久化到数据库的开源组件,是对 JDBC 的封装,主要负责 java 对象的持久化.。对象持久化就是将内存中以对象形式存在的数据转存到外部持久设备中;在适当的时候可以方便的完整的将数据恢复到内存中(双向的数据转化)。进行对象持久化的原因是首先是从物理上(看基

31、本现象的):1)内存不能持久化保存数据2)内存容量有限 业务上:1)共享信息 (信息对于信息系统来说是先导性要素,内存是不共享的,受保护的,要把信息放在能够共享的地方)2)管理(信息的管理:安全、备份、权限)(信息的集中,方便进行信息管理)3)大规模的检索 Hibernate的工作原理:封装了JDBC,提供更简单的抽象的API给业务层调用,保证业务层是面向对象的。1.4 开发工具以及发布环境1.4.1 系统开发环境操作系统:Red Had Linux9 或 WINDOWS XP虚拟机:jdk-6-linux-i586 或 jdk-6-win-i586浏览器:FireFox2.0 或 IE6We

32、b 服务器:Apache Tomcat 5.0数据库:MySql 5.5IDE 工具:MyEclipse6.0(集成 Eclipse3.3)1.4.2 系统发布环境操作系统:Red Had Linux9 或 WINDOWS XP虚拟机:jdk-6-linux-i586 或 jdk-6-win-i586浏览器:FireFox2.0 或 IE6Web 服务器:Apache Tomcat 5.0数据库:MySql 5.52 系统分析2.1 系统可行性分析2.1.1 技术可行性采用struts2和jsp实现的电子商务订购系统,具有可视化的优点,能大大提高软件开发的效率,缩短开发周期,具有很大的应用潜力

33、。在开发中使用了struts的强大框架技术和jsp的视图效果,使用ajax实现动态异步效果,建立以MySQL 数据库系统的核心动态网页,实现电子商务系统前台购物和后台管理等功能模块。2.1.2 操作可行性通用的Web浏览器降低了操作复杂度,遵循操作员的操作习惯,使得用户在使用时,只要自如的按习惯进行操作,即可轻松完成工作。因此,从操作角度衡量,本系统的开发方案也是可行的。2.1.3 法律可行性电子商务订购系统只是为提供企业与客户之间沟通与交流而搭建的一个平台,信息合法,不涉及侵权等法律法规。在网络迅速发展的现在,这种商业模式在逐步完善。2.2 系统需求分析网上书店系统开发意图:为了更好地适应市

34、场需求,缓解各书店的地域限制,为消费者实现更便捷的方法,利用网上书店系统和计算机设备实现 网上查阅选购书籍购买邮寄书籍管理用户管理、订单管理等,提高工作效率,增加图书销量,增加用户,便于管理,使用户易于挑选和购买。网上书店系统的应用目标:通过这个系统使用户利用计算机可以足不出户就能在网上进行查阅、挑选、购买;使管理人员利用计算机,快速方便的管理书籍的销售,新书的入库,书籍的分类,热门书籍的选择,客户的购买和选择,客户的管理。使购书变得方便。2.2.1 客户端的需求分析在客户端,主要需要实现用户的注册,登录,浏览商品,选购商品,结帐服务等。客户端功能实现的主要流程如图2-1所示:浏览商品选择商品

35、订购商品去购物车去收银台提交订单未注册用户已登录注册用户未登录注册用户注册登录图2-1 客户端功能流程图用户可以注册本系统,然后登录系统进行商品的浏览和选购,用户可以购书,也可以查看图书信息,查询图书可以通过关键字,也可以通过分类查询。当用户找到自己需要的书籍以后可以选择购买,也可以查看图书的详细信息。这时候如果用户选择购买的话,他可以选择购买的数量,并将书籍放到购物车中,这个时候用户就可以去查看购物车信息,购物车中罗列了用户购物的清单(订单),用户可以查看订单信息,修改订单信息。比如说修改书籍的购买数量,或者删除前面购买的书籍。这时用户可以提交购物车到后台结帐,也可以选择继续购书。继续购书就

36、是按照前面的流程在循环的走下去。用户提交购物车以后,订单就不能再被用户修改了。这个时侯用户的流程就走完了。用户可以继续进行商品的选购或者退出系统。2.2.2 后台管理的需求分析后台管理的主要设计实现就是可以使作为管理员,对本系统商品的管理,用户的管理,订单的管理。管理员需要能够在高效的情况下时刻关注系统的必要性增加、删除、修改的维护功能。服务端功能实现的流程图如下图2-2所示:图2-2 后台管理流程图系统的管理员在进入管理员界面进行登录,首先也必须进行验证登录,这时系统从admin_user数据库表中查找看有没有用户输入的用户,并验证密码是否正确,如果不正确那么系统提示返回,重新登录。如果正确

37、则进入后面的工作流程。这时管理员可以进行管理操作,比如用户管理操作(查看用户信息,修改用户信息,添加用户,删除用户),图书管理操作(查看图书列表,查看图书详细信息,添加图书,修改图书,删除图书),图书分类管理操作(添加图书分类,删除图书分类,浏览图书分类列表),订单管理操作(查看订单,确认订单,修改订单状态,删除订单)。操作完之后管理员可以退出系统。3 系统设计3.1 系统模块设计根据对本系统的需求分析,系统在客户端要实现用户注册、用户登录、商品浏览、订单填写的,在后台管理要实现对注册用户、商品和订单的管理。系统实现的总体的模块如图3-1所示:网上书店用户管理员用户注册用户登录浏览商品购买商品

38、用户管理订单管理图书管理填写订单图3-1 系统主要模块3.2 系统设计思想交易系统和管理系统在系统架构方面完全一致,采用 4 层结构,主要包括:表现层、控制层、业务层、持久层。 表现层:主要负责用户交互和结果显示,交易系统和管理系统有不同的 URL 入口界面。 控制层:主要负责系统的访问控制、数据加载和注销,是系统的核心控制单元。控制层通过系统描述来组织工作。 业务层:实现了交易系统和管理系统的主要业务逻辑,是系统主要的运算单元。 持久层:实现了静态数据和数据库数据的持久化管理,为业务层提供数据服务,是系统进行数据操作的统一界面。 在系统中使用Struts作为系统的整体基础架构,负责MVC的分

39、离,在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务层用提供业务逻辑方发。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问最后由Spring完成业务逻辑。系统的基本业务流程是: 在表示层中,首先通过JSP页面实现 交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收

40、到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成

41、员并行工作大大提高了开发效率。3.3 系统主要模块的视图设计系统的视图设计是系统直接展现给用户的界面,有好的用户界面设计会给用户带来更好的体验。在本系统中,根据技术的支持,我选择使用jsp来设计实现视图层的界面设计。Jsp可以很好的与Ajax技术和JavaScript技术结合起来完成动态的页面效果。Ajax技术的异步请求可以减少用户的等待时间,实现无刷新的更新,给用户有好体验。在视图设计中还将使用的是美工知识,也就是css样式的使用,在jsp中引如css样式设计这样可以设计出页面的框架布局和页面效果。3.4 系统核心部分的设计系统的核心部分也就是用来处理浏览器发送请求的处理部分。在Web的流程

42、控制部分的设计,根据系统的设计思想,可以使用Action组件来实现用户在浏览器发送请求的控制,根据用户发送的请求地址,在Action的组件配置中可以很方便的控制请求的重定向或者请求的转发。3.4.1 客户端的设计在客户端的实际主要是实现的客户端jsp页面的实现和其中的请求流程空中部分,主要界面是在MVC的视图层实现的,在本系统中使用了jsp实现的,在jsp中使用了其他支持技术,比如ajax和json来实现异步请求和获取服务器端信息等功能。客户端用户请求路径与Action组件的映射关系如表3-1所示:表3-1客户端用户请求路径与Action组件的映射关系表用户的请求路径对应的Action组件功能

43、描述login.actionLoginAction负责判断数据库中该用户是否存在,如果该用户不存在则返回到登陆页面并提示用户,若存在则把该用户信息放在session中,并把页面跳转到购物浏览页面regist.actionRegistAction 负责控制用户在注册页面填写注册信息之后的判断,如果用户注册信息正确即注册成功跳转到注册成功页面,否则跳转到错误页面booklist.actionBookListAction负责从数据库中获取商品信息保存在请求中,以便在页面中显示信息cartlist.actionCartListAction从session当前会话中获取用户的购物车,从而获得购物车中的详

44、细商品条目,显示在购物车页面cartput.actionAddAction负责用户在浏览商品过程中购买商品的动作处理update.actionUpdateAction负责处理用户对购物车中商品数量的修改delete.actionDeleteAction负责用户对购物车中的商品的删除处理,删除的商品被放在垃圾箱中可以重新被回复 order_info.actionOrderInfoAction负责用户对即将生成订单的购买商品的确认, 确认之后跳转到订单信息的填写order.actionOrderAction负责对用户提交的订单信息生成订单的处理3.4.2 后台的管理设计后台管理的请求路径与Acti

45、on组件的映射,在后台的管理和实现中使用了Struct2的Action类实现的,在代码设计部分的Action组件、jsp组件和Action配置文件的关系是设计的核心,也正是MVC的核心控制部分,后台的请求路径和对应Action的详细对应关系如表3-2:表3-2后台管理的请求路径与Action组件的映射请求路径对应的Action功能描述manager_login.actionManagerLoginAction负责判断管理员的登录是否正确,登陆正确则进入管理界面,否则给出提示信息userlist.actionUserListAction负责从数据库中获得用户表中的用户信息,以便在相应页面中显示m

46、anager_user.actionManagerUserAction负责用户管理中对用户的删除和给用户发送email的业务处理orderlist.actionOrderListAction负责从数据库中获得订单表中的多有订单的详细信息,以便在相应的页面中显示delete_order.actionDeleteOrderAction负责删除已经发货成功的订单或者无效的订单update_order.actionUpdateOrderAction负责对订单的状态根据发货情况进行更新productlist.actionProductListAction负责从数据库中获得商品的所有信息,以便在相应的页面

47、显示add_product.actionAddProductAction负责商品添加的处理modify_product.actionModifyProductAction负责处理提交的商品的修改信息delete.actionDeleteProductAction负责商品删除的处理4 系统详细设计与实现4.1 数据库设计与实现4.1.1ER图根据系统的模块分析和需求分析整理出本系统的E-R图如图4-1所示:图4-1 系统E-R图4.1.2 数据实体描述以及表结构(1)商品表d_product:用来存放商品的基本信息,包括商品的id、商品名称、商品描述、商品上架时间、市场价格、当当价格、搜索关键字、商品图片的信息。在这里把商品表设计成为基本表,也就是记录的是所有类别商品的基本特征,商品中可以是图书,可以是其他的,以后就可以使用他作为父表,把图书作为字子表,其中的相同字段不需要再次定义。商品表的表结构如表4-1所示:表4-1商品表字段名称类型约束描述

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号