购物网站设计与实现毕业论文_第1页
购物网站设计与实现毕业论文_第2页
购物网站设计与实现毕业论文_第3页
购物网站设计与实现毕业论文_第4页
购物网站设计与实现毕业论文_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

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

文档简介

1、购物网站设计与实现毕业论文ZHIJIANG COLLEGE OF ZHEJIANG UNIVERSITY OF TECHNOLOGY毕业设计(论文)题 目:基于 Struts + Spring + Hibernate的购物网站设计与实现学生姓名曹逸学号200520100303分院信息工程分院专业班级计算机503班指导教师曹平2009年5月杭州中文摘要摘要本设计运用当前主流的Java技术,采用MVC开发模型,以Struts. Spring和 Hibernate框架为基础开发了一个轻量级的网上购物系统。Struts用作控制器,Spring 作为业务层,Hibernate作为数据持久层,开发中同时使

2、用JSTL标签库。这些技术 的整合,使得系统在各方面都能达到要求,并有利于系统的维护和升级。系统分为前台部分和后台部分,前台部分主要实现的功能有顾客的注册和登录 功能、査看商品信息功能、搜索商品的功能、购物车、收藏夹功能、个人信息维护 管理功能;后台部分主要实现管理员管理商品信息、订单信息、目录信息和用户信 息。其中购物车可以在用户未登录的情况下操作,并且原有的商品与现有的商品可 以相互叠加。关键词:网上购物系统;Struts; Spring; Hibernate; JSTL; MVC 模式英文摘要ABSTRACTThis design uses the mainstream Java tec

3、hnology to develop a lightweight online shopping application. MVC software developing model is adopted, based on the popular framework consisting of Struts, Spring and Hibernate, where Struts behaves as the controller layer, Spring as the service layer, and Hibernate as the data persistence layer. J

4、STL library is also used. With all these technologies together, the application achieves all the design purposes, and is flexible for update and maintenance.The application consists of two main subsystems, the front end subsystem and the central management subsystem. For the front end subsystem the

5、features involve customer registration, login, information retrieval on merchandises, product search, shopping cart, preference foldei; customer profile update. Product information update, orders process, category and user information management are the functions of the central management subsystem.

6、 In the mean time, the shopping cart can be used without login, the selected item can be added automatically.Key Words: Online shopping system; Struts; Hibernate; JSTL; The Model of MVC目录9176弓I 言1相关知识和技术背景22.1J2EE概述22.2MVC设计模式223StrutsMVC设计模式32.4Spiiiig框架325Hiberna2 框架2.6Stmts 、 Spring 、 Hibernate 的

7、 整 合52.7JSTL标6系统需求分析3.1B2C系统模块介绍73.2确定用8户需求331对性能的规定9332输入输出要求9333数据管理能力要求9334故障处理要求9335运行环境需求系统概要设计1041总体设计104丄1环境配置104丄2系统结构104丄3总体模块410模能块4.2功1142211 421用户顾客注册、登录模块品检索、浏览模块管理模块12423个人信4.2.4购物车/收藏夹模块425后台登录模块13426商品管理模块14427商品目录管理模块428订单管理模块15429会员管理模块1617计系统详细设计一51数175.1.1ER目录5丄2数1852架构设计27521带日志

8、功能的设计27522Webxml 配 置 文 件27523Striits配置文件28524Sprinz配置文件28525Hibernate 自 动生成的文件29526工程包 层 次 结构295.3详30531顾客注册、登录模块 30532商品检索、浏览模块30管理模块533个人信534购物车/收藏夹模块535后台 登 录 模 块32536后台商品管理模块32537后台商品目录管理模块33538后台订单管理模块34539后台会员管理模块目录346 系统实现3561环境配置3562主36621前台界面显示及代36622后 台 界 面 显 ZK 及 代55结论59致谢61参考文濫62VI浙江工业大学

9、之江学院毕业设计(论文)1引言随着Internet的蓬勃发展,电子商务慢慢融入了我们的生活。如今,在发达国 家通过Internet进行交易已成为潮流。由于网上电子商务的稳定性需求比较高,商 城系统面临着严格的考验。不少商家、公司只制作一个或者几个产品介绍的界面, 显然无法满足客户的需求。客户不能在在线订单,导致了他需要通过多种步骤来与 商家取得联系。其弊端显而易见,首先是低效率、数据的严重冗余,其次是维护困 难;显然这些简单链接构成的网站在数据的共享性、人机的交互性以及网站维护性 上都有很大的问题。因此,开发一个基于web的动态网上购物系统是极其迫切的。因此PHP, ASP, JSP应运而生。

10、PHP语法简单,非常易学易用,很利于快速开发各种功能不同的定制网站。但 是它没有一个大的公司去支援它,使的后续能力比较差。ASP简单且易于维护,很 适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业 应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常 困难。JSP对于网站开发来讲不像PHP和ASP那样易学易用,支持JAVA的主机也 少于支持PHP的主机,这从一定程度上限制了 JAVA技术在网站上的发展,不过在 企业软件应用上来讲,MVC还是拥有相当大的优势的,虽然其配置和部署相对其他 脚本语言来说要复杂一些,但对于跨平台的中大型企业应用系统来讲

11、,基于JAVA技 术的MVC架构几乎成为唯一的选择。电子商务从1995年以来得到了迅速发展,显现了巨大的现代商业价值。在美、日等信息化程度较高的国家和地区,网络商店发展速度迅猛。尤其是美 国,各类送货系统、快递运输公司、支付公司、安全、广告、商务软件、信息服务 等新型物流和中介机构发展呈加速态势,并且有很大的发展空间。在我国,网上购物从无到有也不过短短几年时间。根据中国网络经济研究报告, 截止2009年中国互联网用户数量已达到3.22亿,有过网上购物经历的用户已经超过 7400万人,并且这一数字还在以60%左右的速度增长。这说明在中国发展网上购物 具有良好的群众基础,网上购物方式慢慢被大家所接

12、受。在技术方面,由于我国基本都使用windows操作系统,所以用VS平台开发比 较多。但在发达国家不一样,比如美国,它有MAC操作系统,那里ASP将不再适 用,它并不是很好的支持跨平台。21世纪将进入电子商务时代,是社会发展的必然,我们将别无选择地生活在电 子商务时代。如何面对电子商务方式、如何适应数字化生存并积极参与电子商务时代的国际竞争,是涉及到每个人、每个企业、部门及国家发展与生存的重大 问题,也是国家管理部门现在应该规划、并促进其发展的战略问题。浙江工业大学之江学院毕业设计(论文)2相关知识和技术背景2.1 J2EE 概述J2EE (Java 2 Platform, Enterpris

13、e Edition)是美国 Sun 公司推出的一种全新概 念的模型,与传统的互联网应用程序模型相比有着不可比拟的优势。典型的说,提供这些服务的应用软件必须同企业信息系统(EIS)相结合,并提 供新的能向更为广阔的用户提供的服务。这些服务要具备以下的特点:a. 高可用性:来满足现在的全球商业环境b. 安全性:保护用户的隐私和企业数据的安全c. 可依赖性和可扩展性:保证商业交易的正确和迅捷通常这些服务是由分布的应用程序组成的,包括前端数据端和后端数据源以及 它们之间的一层或几层,这些中间层提供了把商业功能和数据与EIS相结合的功能。 这些中间层把客户端从复杂的商业逻辑中分离出来,利用成熟的INTE

14、RNET技术使 用户在管理上所花费的时间最小化。J2EE正式降低了开发这种中间层服务的成本和复杂程度,因而使得服务可以被 快速的展开,并能够更轻松的面对竞争中的压力。J2EE架构图见图212.2 MVC设计模式MVC框架把业务逻辑、页面流程控制和用户界面分开,便于开发人员进行角色 分工,实现分层及并行开发,有利于软件复用和重构,以及系统的维护和扩展。其 中,“Model”代表的是应用的业务逻辑(通过Java Bean, EJB组件实现),“view”是 应用的表示层(一般是JSP或JSF页面),“Controller”是提供应用的处理过程控制, 这种设计模型把应用逻辑,处理过程和显示逻辑分成不

15、同的组件实现,降低了业务 逻辑接口和数据接口之间的耦合,同时提高了代码的重用性oMVCX作原理见图22。MySQL图2-1 MVC工作原理浙江工业大学之江学院毕业设计(论文)2.3 Struts MVC设计模式Struts提供了 Controller组件并且整合了其它技术来实现Model和View*对于 Model, Struts可以使用标准数据访问技术,如JDBC和EJB。也可以使用第三方工 具,如Hibemate。至于View, Struts支持JSP技术、JSTL和JSF,也可以使用Velocity 模板,XSLT及其它表示系统。此外Struts提供了自定义的标记库,可以辅助JSP 进行

16、表示层的设计,通过这些自定义标记可以和系统的Model部分进行交互。Struts 的核心组件有 ActionServlet, Action, ActionForm, ActionMapping, ActionForword, TagLIb以及配置文件等。我们用JSP技术结合Struts强大的TagLIb来实现我们的 表示层。Response图22 struts 1架构图2.4 Spring 框架Spring是一个以依赖注入(inversion of control IOC)原则和面向方面编程思想 (aspect-oriented programming, AOP)为基础的轻量级框架。Sprin

17、g 既是一个 AOP 框架,也是一个IOC容器。运用AOP可以创建“横切关注点”(Crosscutting Concerns), 在应用时将它们插入代码中,使得代码有良好的可重用性。IOC容器允许在需要生 成对象的地方创建一个应用上下文,然后将这些对象传递给它们的合作对象。它可 以很容易地替换业务对象,只要用Java Bean属性和配置文件加入依赖性,然后就可 以很容易地在需要时替换具有类似接口的协作对象。Spring还提供了可以和总体的 IOC容器集成的强大而灵活的MVC Web框oSpring是一个轻型容器,其核心是Bean 工厂,用以构造我们所需要的Model。在此基础之上,Spring

18、提供了 AOP的实现, 用它来提供非管理环境下申明方式的事务、安全等服务;对Bean工厂的扩展 Application Context更加方便我们实现J2EE的应用;DAO/ORM的实现也更方便我 们进行数据库的开发:Web MVC和Spring Web提供了 Java Web应用的框架或能 够与其它流行的Web框架进行集成。从设计理念可以看到Spring帮助你实现了真正的逻辑层和Web层的分离。浙江工业大学之江学院毕业设计(论文)Spring模块是构建在核心容器之上的,核心容器又定义了创建、配置和管理Bean的 方式。Spring使用基本的Java Bean来完成以前只可能由EJB完成的事情

19、。然而, Spring的用途不仅限于服务器端的开发,从简单性、可测试性和松耦合的角度而言, 任何Java应用都可以从Spring中受益。图2-3 spring架构图2.5 Hibernate 框架Hibernate是一个实现对象和关系之间映射(object relation mapping, 0RM)的开 源框架。它对JDBC进行了轻量级的对象封装,使得JAVA程序员可以使用面向对 象的编程思维来操作关系数据库。如果在软件开发中采用面向对象的方式进行设计, 而使用的是关系数据库,就可以选用Hibernate这种框架来实现对象和关系之间的映 射和数据的持久化。Hibernate拥有一种功能非常强

20、大的査询语言HQL,这种语言 与SQL相似,而且完全是面向对象的。它査询的是持久化对象,而不是数据库的记 录,而且它可以支持多态、继承、关联等关系。Hibernate 利用数据库配文件:hibernate, properties> XML Mapping 等为应用 程序提供数据持久服务的,又通过读取配置文件(hibern玳eCfg.xml)和类的映射文件 (XML Mapping)中的内容,生成SessionFactonr实例,并由它的openSessionO方法 负责每次所需的Session对象的创建,在Session对象的方法中借助持久化对象来完 成对数据库的操作,而不需使用JDBC

21、和SQL进行数据的操作。这样就避免手工编浙江工业大学之江学院毕业设计(论文)写访问数据持久层的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据 的时间,降低了开发的难度。Database图2-4 hibernate架构图2.6 Strutsv Spring、Hibernate 的整合综上所述,表现层采用Struts框架,业务逻辑层采用Spring框架取代EJB容器, 数据持久层以Hibernate取代实体Bean,提供具体的数据库数据处理操作,三者进 行有机整合,构成轻量级J2EE应用框架。整个轻量级框架业务流程为:用户接口层利用JSP+HTML页面实现交互界面, 负责传送页面请求和

22、接收响应,表示层Stmts收到请求,调用相应的Actlon,处于 业务层的Spring IOC容器负责向Action提供业务服务组件(Service)和相应的数据访 问处理组件(DAO),并提供事务处理、日志管理等一系列系统服务,处于持久层的 Hibernate负责对象化映射与数据库交互,具体处理DAO组件请求,并返回结果。我们把整合后的框架分成四层,这四层分别是:实体层、DAO层、服务层、Web 层。每个层在处理应用程序上都应该有一项明确的责任,而不应该在功能上与其它 层混合,并且每个层要与其它层分开的,但要给他们之间放一个通信接口。浙江工业大学之江学院毕业设计(论文)2.7 JSTL标签库

23、JSTL是一个不断完善的开放源代码的JSP标签库,是由apache的Jakarta小组 来维护的。JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上,如tomcat 4.x0 但是在即将推出的JSP2.0中是作为标准支持的。JSTL包含两个部分:标签库和EL (Expression Language表达式语言)语言。JSP标准标记库(JSP Standard Tag Library JSTL)是一个实现Web应用程序 中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式 化、XML操作以及数据库访问。JSTL 1.0有四个定制标记库:core、format

24、、xml和sql.1. core标记库提供了定制操作,通过限制了作用域的变量管理数据,以及执行 页面内容的迭代和条件操作。2. format标记库定义了用来格式化数据(尤其是数字和日期)的操作。它还支 持使用本地化资源束进行JSP页面的国际化。3. xml库包含一些标记,这些标记用来操作通过XML表示的数据。4sql库定义了用来査询关系数据库的操作。浙江工业大学之江学院毕业设计(论文)3系统需求分析3.1 B2C系统模块介绍 B2C即企业通过互联网为消费者提供一个新型的购物环境网上商店,消费 者可以通过网络在网上购物、亦可在网上支付。本系统主要分为前台部分和后台部 分,前台部分主要实现的功能针

25、对顾客使用,有顾客的注册和登录功能、个人信息 维护功能、査看商品信息功能、搜索商品的功能、购物车功能、收藏夹功能;后台 部分主要由商城的管理员使用,有管理商品信息功能、管理商品目录功能、管理订 单信息功能、管理注册会员功能。这里的模块主要按照使用者不同进行分配。0上购物商城櫛(后台部分前台部分图31本系统的前台部分和后台部分模块它们各自的功能如图31所示:1)前台部分首先顾客可以方便地注册与登录。未注册的顾客可进行商品的査看,也可把商品 放入购物车;未注册的顾客可进入注册页面进行注册,但是若其顾客恶意破环,后 台的管理员可以对其会员进行删除。顾客可以灵活地检索所需的商品信息。可采用关键字搜索。

26、顾客可以方便地査看详细的商品资料。顾客可管理自己的购物车(包括添加或删除选购商品、修改商品购买数量、放入 收藏夹及在线下订单等操作)。顾客可管理自己的收藏夹(包括添加或删除选购商品、放入购物车等操作)。2)后台部分管理员可以方便地管理商品(新增、删除、修改商品信息)。浙江工业大学之江学院毕业设计(论文)管理员可以査看订单、审核、发货、取消处理。管理员可以删除顾客的信息。管理员可以对商品目录进行管理(新增、删除、修改商品目录信息)。3.2确定用户需求要求不同类型的用户拥有不同的功能,具体用户类型包括:后台管理员,顾客(未注册或未登录用户,登录用户)。用例图如下(图32,图3-3):12图32后台

27、管理员用例图登录顾客图33前台顾客用例图浙江工业大学之江学院毕业设计(论文)3.3需求规定3.3.1对性能的规定要按照严格的格式输入,否则数据库不给予响应进行处理;査询时要保证所有包含査询关键字的记录都能査到;尽量减少服务器的压力;3.3.2输入输出要求尽量减少输入数据量;输入数据格式;引导操作的提示;3.3.3数据管理能力要求长久保存的数据存入数据库;购物车给于15天保存期;3.3.4故障处理要求尽可能的保证数据库完好无损;时常备份数据库;3.3.5运行环境需求1) 设备一台具备 Microsoft Windows XPA ISTA 系统计算机;2) 支持软件(1) 用户基础软件配置操作系统

28、:Windows XP;相关软件工具:MvEclipse 6.6;(2) 开发工具平台:Windows XP;服务器:Tomcat 6.0;数据库:MySQL 5.0;相关类库:StrutsSpring、Hibernate、JSTL 等;(3) 测试环境Windows XP+IE8。浙江工业大学之江学院毕业设计(论文)4系统概要设计4.1总体设计4.1.1环境配置B2C系统都基于JDK1.6开发并测试,采用Tomcat 6.0做Web服务器,并在基 于MyEclipse 6.6的平台上开发并测试运行,数据库采用关系数据库MySQL 5.0«如 此搭建出一个稳定的适于系统的应用开发运行

29、环境。Java 开发包 J2SDK (Java 2 Software Development Kit)是基于 Java 软件开发 的前提。J2SDK简称JDK, JDK1.6仍是目前的主打。Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目 中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。曾被 JavaWorld杂志评为最具创新的Java产品(Most Inovative Java Product),同时它又 是Sun公司官方推荐的Servlet和JSP容器。Eclipse是一个开放源代码的、基于Java的可扩展开发平台。My

30、Eclipse是Eclipse 的插件,集成了对Spring、Struts> Hibernate等主流Java EE组件开发插件的支持, 大大简化了 Java EEj应用的开发。MySQL是由MySQL AB公司开发、发布并支持的全世界最流行的开源SQL数 据库管理系统,目前最新版本为MVSQL5.0,对存储过程、触发器和视图有了很好的 支持,成为开源数据库之首选。4.1.2系统结构整个系统的架构设计遵循MVC模式,将展示层、控制层、模型层(业务逻辑层) 及持久层进行合理分离。表现层采用Stmts框架,业务逻辑层采用Spring框架取代 EJB容器,数据持久层以Hibernate取代实体

31、Bean,提供具体的数据库数据处理操 作,三者进行有机整合,构成轻量级J2EE应用框架。整个轻量级框架业务流程为:用户接口层利用JSP+HTML页面实现交互界面, 负责传送页面请求和接收响应,表示层Stmts收到请求,调用相应的Action,处于 业务层的Spring IOC容器负责向Action提供业务服务组件(Service)和相应的数据访 问处理组件(DAO),并提供事务处理、日志管理等一系列系统服务,处于持久层的 Hibernate负责对象化映射与数据库交互,具体处理DAO组件请求,并返回结果。 4.1.3总体模块总体设计是把总体任务分解为许多基本的、具体的任务。这些具体任务合理地 组

32、织起来构成总体任务。其基本任务是将系统划分成模块,决定每个模块的功能, 决定模块的调用关系,决定模块的界面及模块间信息的传递。总体设计过程首先寻找实现目标系统的各种不同的方案。通常,设计出初步的 软件结构后还要多方改进,从而得到更合理的结构,进行必要的数据库设计。浙江工业大学之江学院毕业设计(论文)注册登陆已登录会员查看搜索商品信息4购物车管理卜个人信息管订单管理商品管理管 理 员会员管理商品目录管理未注册、未登录顾客图4-1 B2C系统总体模块图4.2功能模块B2C系统大致可以划分为9个功能模块:4.2.1用户顾客注册、登录模块用户可以通过填写注册信息注册成为会员,会员登陆后可以进行个人信息

33、管理 和购物车等重要操作,未登录或未注册的顾客只能检索浏览商品信息和购物车处理。 在注册信息时,系统会对注册信息进行有效性的验证,有效才会注册成功。会员登陆验证注册信息有效性验证失败返回重 新登陆图42用户注册、登录模块活动图4.2.2商品检索、浏览模块用户可以直接査看商品的全部信息(如商品名称、商品图片、商品价格、商品 折扣、商品介绍等),也可以根据不同的商品种类浏览商品信息,也可以透过输入关 键字对商品进行检索,査看其信息。22图43商品检索.浏览模块活动图423 个人信息管理模块该模块可修改用户的一系列信息,包括修改用户名/昵称、密码;查看一个月内 订单、已取消订单.全部订单;申请取消订

34、单;管理地址簿(添加/修改/删除/是否为 首要配送地址)。图44个人信息管理模块活动图424 购物$/收藏夹模块顾客未登录时,选中商品可添加购物车;可对选中的商品进行修改购买数量、 删除;淸空购物车等操作。当顾客登陆后,可对选中商品进行放入收藏夹操作;放入的商品可进行删除操 作;当顾客要结账时,有配送地址选择。4.2.5后台登录模块后台管理员输入账号密码可以在后台登录,登录验证模块根据输入的账号密码 识别不同角色的管理员,然后进入不同的后台管理模块,账号密码输入错误后给出 错误提示并要求重新输入。会员管理模块图4-6后台登7录模块活动图4.2.6商品管理模块管理员可以査看商品种类和信息,并且可

35、以进行新增、修改、删除商品等操作。进入商品管理模块图47商品管理模块活动图4.2.7商品目录管理模块管理员可以査看商品父目录和子目录,并且可以进行新增、修改、删除商品父/ 子目录等操作。进入商品目求模块图48商品管理目录模块活动图4.2.8订单管理模块订单管理员登录后,可以根据日期范围、订单完成状态、订单编号等取得订单 列表与査看某订单的详情,也可以修改订单的完成状态及订单中的商品或数量,还 可以删除订单本身及订单中的商品。Ov进入订单管理模块/4.2.9会员管理模块管理员登录后,可以取得会员列表,可以对某个会员执行删除操作。 Ov进入会员管理模块V会员显示列农_L_删除会员图410会员管理模

36、块活动图数据库设计5.1.1 ER图设计ordeiitamURLW1TEMS IDb<gGUreiyed (彻SS-(>RDfRS_IDbcrtLrwied(2C0宾 PRODUCT IDbcrt 皿疔&®)CREATE TIME亦匕匕:wCtuviTiirrc LTsjrcdaaPRJCEDiscojwrw.ittd«h»aKI0.2)>丄ccdwsu|>.x GQDFX卫bjqrtir<fly»M:20)話 USERSJObigr<u-<iyK<20)STATUSd敕 3)CReATHIMtKr

37、reAarrp:!冀 rfCO>ESS IDWCHARCEdecm!0.2)TOTALFRCCEdecmlO.Z)gjSTrcm如<n±.1OPO3MTPR3CEd机碱100O1SCCUITPPKE>hJXR5JO=U3t|?5JD1PRCOLCTJD-fRODUCTJD *' U5&5_1DLOGOHIDdiess旧:ADDWSS IDbUftvnsicre'ZO)克 USFRS TO旳賊UM6©戈20咬切映vatch»<J3ISFRlhURVirfcunjMietKlO)PRCMMXV4fchar<j)Zi

38、PC<0v(har<!OI59用 DORES5心 h”295TELv«ch»K»)MOBOEych机幻)倔 tt=*£l£TEircun$«i0(KlO)W-tn.$_n>U5E i5JD5系统详细设计FFOWCT ID-PRCOUCT 1D-龙.PRODUCI U)呵fK U&丁创(遡PRUDUCTNAMEVLihaKlOOHORKfORIXLETEnu*6*T(10)lASTUPDATfDeso>mo>ivar<haK30K>)n<iiMBAnvbchaK25*FLUll-W

39、GEvar(hK25QStr CATf GORYJD.PAR6N TbightPdMMsegver(ha<50)quat»htv讯g*护&PRICEd«rr>aK10.2>DISCOUNTrtixwcddCOrtCMETrFffmwi(iQ)CATEG0PVJ1utersLCiPASSVilCaDUSERVmUKRWNC 賢 55ICMDSTATUS RIGISTRATlOnDCfPOtriTM:W0<LA$bnrunsigitfRaoiJlT vjt(h»<W| gchaK+S) 加 vfch»<W) 、做

40、h»g irtunacjie(KlO) Ons54rrc(l9> btyrt umb©戈20 加(l«R5JgJ$EP5JD*< WTSHUST JD tW insisZR) >* U5ER5 ID “尹 55§说33) & PRODUCT。U尹血与说砂CATfGORY IDb>arc s»r&(R)CATFCOftYNAMFvchcfCa)MARK! ORDtl ETCrWeJtned】。)己UPDATEbno?tamp<19)OESCRIPnCN心如細币叱処varchfi<2S4)RJIE

41、 進var出sK2S4)(STOP# LreatnwtCMEGCP.Y JD 少冋 T呃 rw&wl0:9(dtory雯3nt UT!iyfl(KlO>CARSESSJOMveichai<5>PRODUCrWt记6肌1«»)TOTALPRJCEckdna(10?2)CCSCCChTinttnayecKlO)CAJlhUMmtuii*yeKlO>CCFRXCd:ora30?2)£! PROoucrdtW5 如甜:20)图5-1 B2C系统ER图从图5-1可看出各数据表之间的各种关联关系,各关联关系将会在Hibernate的 映射文件中

42、体现出来。注册用户与地址栏为一对多关联:一个用户可以有多个地址,而每个地址只能属 于一个用户。注册用户与订单为一对多关联:一个用户可以有多个订单,而每个订单只能属于 一个用户。订单与订单项为一对多关联:一个订单可以有多个订单项,而每个订单项只能属 于一个订单。注册用户与收藏夹里的商品为一对多关联:一个用户可以有多个收藏夹商品,而 每个收藏夹里的商品只能属于一个用户。商品目录与商品为一对多关联:一个商品目录可以有多个商品,而每个商品只能浙江工业大学之江学院毕业设计(论文)属于一个商品目录。购物车与商品为一对多关联:一个购物车可以有多个商品,而每个商品只能属于一个购物车。5.1.2数据表设计5-1

43、注册会员表(users)字段名称数据类型主 键描述USERS_IDBIGINT(20)会员 的 ID 号BONUSPOINTBIGINT(20)外 键会员 积分 的 IDLOGONIDVARCHAR(30 )登录 Hl/ DLOGONPASSWORDVARCHAR(45 )7密码USERTYPECHAR(3)7类 别: A舟 管理 员; C为 用户USERNAMEVARCHAR(30 )STATUSINTEGER7浙江工业大学之江学院毕业设计(论文)REGISTRATIONTIMESTAMP7MEMBERCLASSCHAR(IO)表5-2地址栏表(address)-一称 名 字一型 据 数F1

44、甘疋否允许为空I-地址栏ID号I-会员的ID号7无送姓名烹否为主25浙江工业大学之江学院毕业设计(论文)地 址PROVINCEVARCHAR(30)省ZIPCODEVARCHAR(IO)SELFADDRESSVARCHAR(256)TELVARCHAR(30)MOBILEVARCHAR(30)MARKFORDELET EINTEGER字段名称PRODUCT_ID数据类型主 键BIGINT(20)7商品的I是否允许为空表5-3商品表(product)OOD 号P-YITRyNOEE1商品类别的IDHAO)商品名称T商品价格/y商品折扣/y商品数量HA勺/y商品图片/y商品描述raMARKFORD

45、ELETEINTEGER7>HOMETYPEINTEGER7主页显示类别表 54 购物车表(shoppingcars)字段名称数据类型主 键描述SC_IDBIGINT(20)购物车的 ID号PRODUCT_IDBIGINT(20)外 键商品ID号CARSESSIONVARCHAR(45)未登录 SESSION ;登陆后值 为用户名PRODUCTNA MEVARCHAR(100)7商品名称TOTALPRICEDECIMAL(207总金额,2)DISCOUNTINTEGERCARNUMINTEGER待购物商 品数量DISPRICEDECIMAL(20 ,2)折扣总金 额表5-5收藏夹表(wi

46、shlist)字段名称数据类型主 键是否 允许 为空描述WISHLIST_IDBIGINT(20)收藏夹ID号USERS.IDint外 键用户IDPRODUCT_IDint外 键商品ID表56订单表(Orders)I-1用户皿订单状态创建时间总价格打折完价格加上配送金额积 分 获 得打32浙江工业大学之江学院毕业设计(论文)折完价格表57订单项表(ordefitems )33浙江工业大学之江学院毕业设计(论文)折后最终价格表 5-8 目录表(category)-*称 名 段 字型 )据 数1臺否允许为空I-耳录ID号CHA0)目录名称硕除标记EsP最后更新7父目录F-YITRlN所属父目录类别

47、5.2架构设计5.2.1带日志功能的设计在SSH整合时很容易出错,使用log4j日志,能够详细的知道错误的原因;不 用lo腳j有雙回题很难发现。og4j. propertiesnamevaluelog 4 j app ende r. consoleorg.apacheog 4 j. ConsoleApp ende rlog 4j. app ende r. console .layoutorg.apacheog 4 j. SimpleLa youtlog 4 j app ende r.fileorg.a pach eog 4 j. RollingFil eAppenderlog 4 j. app

48、 ende r.file. Filecc.txtlog 4 j. app ende r.fileoutorg.a p-ach e .log 4 j .Patte rnL ayou tlog4jappender.file吕you匕ConversionPattern%t %p - %m%nlog 4 j rootLoggerinfo, co nsol 约 File5.2.2 Web.xml配置文件在web.xml中配置中文过滤器、Struts标签库、Struts中央控制器ActlonServlet 及默认的欢迎文件列表等。下图为过滤器配置文件。<filter><fllter-na

49、me>cc</filter-name><filter-class>com.cc.method.FilterImpl</filter-class></fllter><filter-mapping><fllter-name>cc</filter-name><url-pattern>/*</url-pattern></fllter-mapping>5.2.3 Struts配置文件在Struts配置文件struts-config.xml中主要配置:配置 ActionForm B

50、ean<forin-bean5>-<forrn-bean nLarne=,u3er3Regl5teEForrdF,t.ype=rrcoin uu struts form UserrsRRgistLerrFciEniw /><forrn-bean niarne=FFusersLoginFomnF,t.ype=,corn. cc struts. form. U5ersLoginFoErd,r f><forrn-bean naine=rrusersMocllfyProf lleForttirrtype=FPcom cc struts form UsErrsn

51、o&if yProf zLlgForrnn" /><forrn-bean narne=rpuserChangePwdForrd,rt.ype=,rcoin cu struts form U目呂匚Ch&ngEPudForrm" Z>配置 Struts-Spring 插件<plug-in classNai,r,iE=rrotrg.spting±raweTTork 前mb struts ContextLoaderPlugInrr> <set-propert.y property= Mcontex tConf igLoc

52、at-ionF,value=r7DJEB-INF/c lasses /app 1 icat ion.Cont.ext. xml,r /></plug-in>配置Validator插件<plug-in classNarne= FForg. apache struts. validator; .ValidatorPlugIjiFP> <set-property pi:o:pEi:tyu"paxhrLarnE!宫"value=f,/WEB- INF/val idator-rules xrcil /WEB-INF/validation xrn 1

53、M / > </plug-in>图 5-2 struts-config.xml 配置文件图5.2.4 Spring配置文件 Spring 连接 MYSQL<bean id= IFdataSource rFclass=rrorg.apache . commons:, dbcp. BasicDataSQurcerr><property narne= ,rdr iverC LassMarcie,rvalue=rrcorn .inysql jdbu 口厂137包匚苗></property><property iisrne=,rui;lrrvalue=rrjdfoc :mysql: / localhost:3306/ccshoprr></property>property narne= Musern.ainevalue=F,rootMX/property><property xisrne=,rpasswqrdrr value=rradrnin,f></property> </bean> Spring自动生成的方法联结<bean id= rrAddtessDAOrr class=rrcow cc.

温馨提示

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

评论

0/150

提交评论