基于JSP和Hibernate电子商务网站设计与实现.docx

上传人:b****8 文档编号:10588328 上传时间:2023-02-21 格式:DOCX 页数:51 大小:196.60KB
下载 相关 举报
基于JSP和Hibernate电子商务网站设计与实现.docx_第1页
第1页 / 共51页
基于JSP和Hibernate电子商务网站设计与实现.docx_第2页
第2页 / 共51页
基于JSP和Hibernate电子商务网站设计与实现.docx_第3页
第3页 / 共51页
基于JSP和Hibernate电子商务网站设计与实现.docx_第4页
第4页 / 共51页
基于JSP和Hibernate电子商务网站设计与实现.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

基于JSP和Hibernate电子商务网站设计与实现.docx

《基于JSP和Hibernate电子商务网站设计与实现.docx》由会员分享,可在线阅读,更多相关《基于JSP和Hibernate电子商务网站设计与实现.docx(51页珍藏版)》请在冰豆网上搜索。

基于JSP和Hibernate电子商务网站设计与实现.docx

基于JSP和Hibernate电子商务网站设计与实现

基于JSP和Hibernate电子商务网站设计与实现

第1章前言

1.1开发背景

随着Internet在中国的迅速发展,人们日常生活中越来越多地使用Web技术来为自己的工作和学习服务。

由于Web页面能把文本、图像、声音、动画、视像等多种媒体信息集于一体,不但使信息的显示更加生动,而且使信息的浏览更为方便,同时Web页能实现网上交易平台、客户信息反馈等功能,方便了企业与客户之间的信息交流,因此许多企业为增强知名度,以网站作为对外的展示窗口,进行内外信息交流。

这也是企业面临的商机和挑战。

服装厂正在扩大规模,而且涉及到了出口生意。

服装厂的客户很多,分布于各地,甚至还有国外。

每次有了新款式的服装时,不是所有的客户都能很方便的来到服装厂看货。

所以通知客户的工作很繁琐,因为要给每个客户都发去新款式的数码照片,这是个多次重复而且复杂的工作。

另外,客户通知服装厂订货大部分都是通过现场洽谈或者是电话来确定的,很不方便,而且对于现在的时间就是商机的现状,这样的效率是应该提高的。

所以我设想开发这样的一个网站。

1.2开发目标

开发目标有如下7点:

λ能够在系统上展示产品,包括文字信息和图片信息。

λ能够管理客户的信息。

λ能够动态的给建立关系的客户赋予几种不同级别的权限,不同级别的客户可以看到不同浏览级别的产品。

λ客户通过Internet浏览商品信息,可以在网上下订单。

λ能够给产品设定不同的浏览级别。

λ能够对产品的订货次数进行统计,对服装厂进行简单的决策支持。

λ要求系统运行安全稳定。

1.3项目意义

项目的意义有如下5点:

λ服装企业有了自己的网站,可以将产品信息放在网站上,供所有浏览该网站的顾客浏览,可以起到宣传和广告的作用。

λ任何人都可以注册为网站的用户,可以在网上下订单,这样可以增加客户的数量,扩大销售渠道,为客户提供方便。

λ固定客户被赋予一定的权限之后统一到网站上浏览新产品的信息和下订单。

这样可以省去服装企业为每个客户发送新款产品照片的这一繁琐工作,提高了工作效率,减少了失误。

λ一些老款式的服装信息可以长期保存,比如说某个客户想要几年前的某个款式或者是某种面料,开发了这个网站后既方便服装厂又方便了客户。

λ通过留言板,及时了解顾客对企业的意见和产品信息的反馈,为及时与顾客沟通信息提供了方便的平台。

使企业及时地了解顾客的需求,及时地更新产品,更好的为顾客服务,提高企业的市场竞争力。

总之,本项目在提高服装厂工作效率的同时,也能起到广告宣传的作用,正所谓一举多得。

第2章开发工具及运行环境

本课题的开发工具有Java、MySQL数据库、Hibernate中间件、Tomcat等,运行环境包括软件环境和硬件环境。

2.1软件环境

1.Java

Java能使软件在很小的机器上运行,基础解释和类库支持的大小约为40KB,增加基本的标准库和线程支持的内存需要增加125KB。

它的特性列举如下:

λSimpleAndFamiliar(简单熟悉)。

λDistributed(分布式)。

λObject-Oriented(面向对象,OO)。

λ健壮特性。

λSecure(安全)。

λArchitecture-Neutral(结构中立)。

λPortable(可移植性)。

λMultiThreaded(多线索、多线程)。

λSomewhatInterpreted(部分解释)。

λHighPerformance(高性能)。

λDynamic(动态)。

2.MySQL数据库

MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用。

可以选择适用于服务器、数据库和表格的存储引擎,以便在选择如何存储信息、如何检索这些信息以及需要数据结合什么性能和功能的时候提供最大的灵活性。

选择如何存储和检索数据的这种灵活性是MySQL为什么如此受欢迎的主要原因。

其他数据库系统(包括大多数商业选择)仅支持一种类型的数据存储。

遗憾的是,其他类型的数据库解决方案采取的是“一个尺码满足一切需求”的方式,这就意味着要么牺牲一些性能,要么就用几个小时甚至几天的时间详细调整数据库。

使用MySQL,仅需要修改使用的存储引擎就可以了。

MySQL中的数据用各种不同的技术存储在文件或者内存中。

这些技术中的每一种都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。

通过选择不同的技术,能够获得额外的速度或者功能,从而改善应用的整体功能。

3.Hibernate中间件

对象和关系数据其实是业务实体的两种表现形式。

业务实体在内存中表现为对象,在数据库中表现为关系数据。

内存中的对象之间存在关联和继承的关系,而在数据库中,关系数据无法直接表达多对多的关联和继承关系。

因此把对象持久化到关系数据库中,需要进行对象关系映射(Object/RelationMapping,简称ORM),这是一项繁琐耗时的工作。

选择Hibernate作为中间件的原因如下:

λ它可以对JDBCAPI进行封装,负责Java对象的持久化,在分层的软件架构中它位于持久化层,封装了所有数据访问的细节,使业务逻辑层可以专注于实现业务逻辑。

λ它可以方便地使用数据库连接池。

而且它是开放源代码。

4.Tomcat

Tomcat是一个免费的开源的Servlet容器,它是Apache基金会的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。

Tomcat被JavaWorld杂志的编辑选为2001年度最具创新的Java产品,可见其在业界的地位。

由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。

很多中小应用不需要采用EJB等技术,JSP和Servlet已经足够,这时如果用应用服务器就有些浪费了。

而Tomcat短小精悍,配置方便,能满足我们的需求,这种情况下我们自然会选择Tomcat。

Tomcat也可以与其他一些软件集成起来实现更多的功能。

现举例如下。

λ与JBoss集成起来开发EJB。

λ与Cocoon(Apache的另外一个项目)集成起来开发基于XML的应用。

λ与OpenJMS集成起来开发JMS应用。

除了以上提到的这几种,可以与Tomcat集成的软件还有很多。

Tomcat确实是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性。

如今,开源软件越来越受到人们的重视,Linux就是一个成功的典型。

人们不再只限于使用软件,而且已经关心起软件的具体实现。

我们有理由相信Tomcat会走得更远。

5.软件环境的安装与配置

以上介绍的软件安装都很简单,其中JDK和MySQL的安装软件是可运行程序。

只需直接安装即可。

Tomcat、Hibernate的安装文件是压缩软件包,只需把压缩文件解压到本地磁盘,安装好后需在操作系统中设置环境变量。

2.2硬件环境

本系统开发的硬件环境如下:

λPentium(R)4CPU2.80GHz。

λ768MB的内存。

λ操作系统为WindowsXP。

λ网络连接速度为512KB。

在本论文的性能测试部分中,会给出在这种硬件条件下的性能测试结果,以供服装厂参考配置服务器

第3章系统需求分析

进行应用软件系统的研发,首先必须准确了解与分析用户的需求。

需求分析是整个设计过程的基础,它将直接影响应用程序的开发速度与质量。

3.1功能需求分析

经过现场调研,下面给出用户对系统的功能需求。

1.用户管理

用户管理自然是每个网站必不可少的,在本系统中,要求这部分管理安全可靠,权限分明,且其在前台和后台的表现不同,下面将分别进行介绍。

(1)前台表现

λ用户注册,此时要保证系统不受注册机的攻击,要采用验证码技术。

λ要确保权限为普通用户。

λ要有密码保护措施,保证用户设定之后可以找回遗忘的密码。

(2)后台表现

λ系统管理员可以添加用户。

λ系统管理员可以动态的给用户赋予权限,保证系统信息不外泄。

λ系统管理员可以修改和删除用户信息。

λ系统管理员可以给用户建立备注信息,其仅对具有权限的用户可见。

2.类别管理

(1)前台表现

λ类别首先分为男装、女装、童装三个大的固定类别。

在每个大的类别之下,可以动态的添加或者删除小类别。

示例:

短裙、长裙均属于女装,女装为固定类别,而短裙、长裙则为小类别。

λ产品按照类别来展示,用户通过不同的类别进入不同的产品区。

(2)后台表现

λ系统管理员可以动态的添加或者删除小类别。

λ类别必须先于产品存在,换言之,每件产品必须属于一个类别。

3.品牌管理

品牌可以为企业起到广告宣传的作用。

(1)前台表现

前台表现为展示品牌文化,对该类品牌进行详尽介绍,可以起到宣传的作用。

(2)后台表现

λ系统管理员可以动态添加和删除品牌。

λ品牌必须先于产品存在,换言之,每件产品必须属于一个品牌。

4.产品管理

产品管理是本系统的根本,安全可靠和按照权限展示是这部分的要求,要操作方便、展示美观。

(1)前台表现

λ产品展示中可以通过大类别→小类别分级展示产品。

λ要根据访问前台的用户级别不同而展示相应级别的产品,以防厂家的商业秘密外泄。

λ产品图片要保证不失真。

(2)后台表现

λ系统管理员可以动态添加、修改和删除产品。

λ必须为产品指定产品小类别。

λ必须为产品指定产品品牌。

λ产品信息要包含一幅或者多幅图片,图片的格式为JPG格式,文件小于200K。

上传速度要快。

λ对产品的订货次数进行统计,以便于对服装厂进行简单的决策支持。

λ系统管理员可以动态调整产品的浏览级别。

5.网上订单管理

网上订单能够带来的方便和快捷是服装厂所期待的。

(1)前台表现

λ用户可以看到自己所有订单的历史记录,以便用户自己做一些统计或者备忘。

λ和服装厂建立业务往来的用户,可以在网上下订单,订单信息包括产品型号和数量,且这两项数据要求进行校验。

(2)后台表现

λ系统管理员可在后台查看所有和服装厂建立业务关系的用户订单,从而决定是留下或者是删除。

λ若无特殊情况,要保证所有业务的用户订单都能够长久保留,这些历史数据可以为服装厂做统计或者做账目提供依据。

6.新闻管理

发布新闻或者公告虽然不是本系统的重要部分,却是不能少的部分,倘若这一部分利用好,带来的商机也是不容小视的。

(1)前台表现

前台的表现是展示新闻,用户可以查阅。

(2)后台表现

后台的表现是系统管理员可以动态添加和删除新闻。

7.留言管理

现在的企业网站都要有沟通的平台。

大规模的一般为论坛,中小规模的网站一般是留言板。

在本系统中,留言板是服装厂和用户之间沟通的桥梁,也是用户之间沟通的媒介。

(1)前台表现

λ分页显示留言。

λ用户、服装厂自身可以发表留言。

(2)后台表现

后台的表现为系统管理员可以查看所有留言,并且可以对留言进行审核,也可以删除留言。

3.2用例图分析

用例图是对包括变量在内的一组动作序列的描述,系统执行这些动作并产生传递特定参与者的价值的可观察结果。

用例图主要的作用有以下三个。

λ获取需求。

λ指导测试。

λ对其他工作流起到指导作用。

1.产品管理用例图

产品管理用例图如图3.1所示。

用户

服装厂

 

浏览产品

删除产品

修改产品

发布产品

图3.1产品管理用例图

提示:

服装厂发布产品信息,包括添加、修改、删除等基本操作。

用户在产品展示模块中可查看产品信息服装厂发布产品信息,包括添加、修改、删除等基本操作。

用户在产品展示模块中可查看产品信息。

2.用户管理用例图

用户管理用例图如图3.2所示。

 

图3.2用户管理用例图

提示:

系统管理员可以添加用户、修改用户、删除用户、管理前台注册用户信息、动态为前台注册的用户赋予不同的访问权限。

浏览者可以注册。

3.订单管理用例

订单管理用例图如图3.3所示。

图3.3订单管理用例图

管理员在后台查看所有和服装厂建立业务关系的用户订单,决定是留下或者删除订单。

和服装厂建立业务往来的用户,可以在网上下订单,也可以看到自己所有订单的历史记录。

3.3性能需求分析

性能需求有以下3个方面:

λ安全可靠,权限机制完善,防止信息外泄。

λ可以防止注册机的攻击,要求采用验证码技术。

λ可满足1000个用户同时在线访问。

第4章系统总体设计

在对开发系统进行全面分析调查的基础上,制定出应用软件的总体设计规划,对建立一个大型的信息系统来说是必须的,也是全面展开开发工作的重要基础。

系统总体设计包括:

系统功能模块图设计、数据库设计、系统类图设计、软件体系结构设计等。

4.1系统功能模块图设计

系统功能模块图如图4.1所示。

图4.1系统功能模块图

4.2数据库设计

数据库的设计是按照以下分析进行的。

λ浏览级别:

产品的属性,用来设定产品提供给何种级别的用户浏览,分为所有浏览者、普通用户、系统用户、普通业务用户、高级业务用户5类。

λ产品大类别:

分为男装、女装、童装3类。

λ产品小类别:

分属于产品大类别,将产品大类别进一步分类。

λ产品品牌:

产品所属的品牌。

λ留言板:

分为中文版、英文版两类。

λ用户级别:

分为普通用户、系统用户、普通业务用户、高级业务用户4类。

1.clothes表

clothes如表4.1所示。

 

表4.1clothes表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

CLOTHID

String

产品编号,由用户指定

NAME

String

产品名称,由用户指定

TYPE

Char

产品的浏览级别

BIGTYPE

Char

产品所属的大类别

DESCRIPTION

String

产品的详细信息

DESCRIPTIONENGLISH

String

产品的英文详细信息

KIND_ID

Long

产品所属的小类别

TRADEMARK_ID

Long

产品所属的品牌

REGISTERED_TIME

Timestamp

入库时间

2.clothesorders表

clothesorders如表4.2所示。

表4.2clothesorders表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

CLOTH_ID

Long

产品的ID

ORDER_ID

Long

订单的ID

NUMBER

Int

订货数量

3.kinds表

kinds如表4.3所示。

表4.3kinds表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

NAME

String

类别名称

NAMEENGLISH

String

类别英文名称

TYPE

Char

类别所属产品大类

4.messages表

messages如表4.4所示。

表4.4messages表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

TITLE

String

留言标题

DESCRIPTION

String

留言内容

TYPE

Char

留言板块

USER_ID

Long

留言者

REGISTERED_TIME

Timestamp

留言时间

5.news表

news如表4.5所示。

表4.5news表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

TITLE

String

新闻标题

TITLEENGLISH

String

新闻英文标题

DESCRIPTION

String

新闻内容

DESCRIPTIONENGLISH

String

新闻英文内容

REGISTERED_TIME

Timestamp

新闻发布时间

6.orders表

orders如表4.6所示。

表4.6orders表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

USER_ID

Long

下订单用户

REGISTERED_TIME

Timestamp

下订单时间

7.pictures表

pictures如表4.7所示。

表4.7pictures表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

PATH

String

图片存储路径

CLOTH_ID

Long

图片所属的产品ID

8.trademarks表

trademarks如表4.8所示。

表4.8trademarks表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

NAME

String

品牌名称

NAMEENGLISH

String

品牌英文名称

DESCRIPTION

String

品牌详细介绍

DESCRIPTIONENGLISH

String

品牌英文详细介绍

PICTUREPATH

String

品牌商标图片的存储路径

9.users表

users如表4.9所示。

表4.9users表

字段名

SQL类型

说明

ID

Long

主键,对象标识符

NAME

String

用户名

PASSWORD

String

密码

EMAIL

String

电子邮箱

TELEPHONE

String

电话号码

ADDRESS

String

地址

TYPE

Char

用户级别

REGISTERED_TIME

Timestamp

注册时间

DESCRIPTION

Text

备注信息

QUESTION

String

密码提示问题

ANSWER

String

密码提示问题答案

4.3系统类图设计

根据分析,本系统有下列8个类:

产品类(Clothes)、类别类(Kinds)、留言类(Messages)、新闻类(News)、订单类(Orders)、图片类(Pictures)、品牌类(TradeMarks)、用户类(Users),系统类图如图4.2所示。

图4.2系统类图

4.4软件体系结构设计

本系统软件层的结构可分为以下4层。

λ表示层:

提供与用户交互的界面。

λ业务逻辑层:

实现各种业务逻辑。

λ持久化层(Hibernate):

封装了数据访问的细节,为业务逻辑层提供了面向对象的API。

λ数据库层:

负责存放和管理应用的持久性业务数据。

软件体系结构如图4.3所示。

表示层

图4.3软件体系结构图

第5章系统详细设计

详细设计的工作包括输入输出设计和界面设计,即根据总体设计的每个功能模块要求和数据库的逻辑结构,利用相应的开发工具设计出应用系统的过程。

5.1输入输出设计

输入输出是系统与用户的主要交互界面,其设计的好坏直接影响系统的性能,这里力求达到界面友好、信息直观和操作方便。

1.后台管理→用户管理→添加用户

图5.1所示为添加用户的界面,包括全部用户信息。

其用户级别为一下拉列表,用户分为两类,即系统用户和普通用户,可由用户选择;其他栏目由用户输入。

图5.1添加用户界面

2.后台管理→类别/品牌→添加类别

图5.2所示为后台管理的添加类别界面。

类别的中文名和英文名由用户输入,例如:

牛仔服、针织、西装、裙装等;类别所属大类以下拉列表的形式供用户选择,包括女装、男装、童装等。

3.后台管理→类别/品牌→添加品牌

图5.3所示为后台管理的添加品牌界面,可通过该界面为经营的服装品牌添加信息。

图5.2添加类别界面图5.3添加品牌界面

4.后台管理→产品管理→添加产品

图5.4所示为后台管理的添加产品界面,可通过该界面为服装的产品添加信息。

查看级别规定了能查看该产品的用户;产品类别包括产品所属的大类和小类,小类在前,大类在后。

图5.4添加产品界面

5.前台展示→用户注册

图5.5所示为用户的注册界面,用户通过该界面输入个人信息。

图5.5用户注册界面

6.前台展示→生成订单

图5.6所示为前台用户的生成订单界面。

当用户选择了产品且输入了数量后,单击“添加该产品”按钮即可生成一订单条目,用户确认订单条目后,单击“提交该订单信息”按钮即可提交订单。

单击“清除该订单信息”按钮将清除订单信息。

图5.6生成订单界面

5.2界面设计

界面是软件的门面,应达到美观、舒适、操作方便、信息准确全面、结构合理等标准。

1.后台管理界面

后台管理界面采用传统的菜单管理框架,如图5.7所示。

图5.7后台管理界面

2.前台系统首页

用户一打开该网站,就应通过登录首页对该网站的功能一目了然,网站的背景采用精美的时装造型吸引顾客的注意力。

用户可以根据“男装”、“女装”、“童装”等不同的类别浏览该企业的产品信息,也可以通过“品牌”的分类来浏览企业的产品信息。

“联系我们”提供了该企业的相关信息,“留言板”使用户可以方便的留下意见和建议。

前台系统首页如图5.8所示。

图5.8前台系统首页

3.前台主要展示界面

产品展示界面为用户浏览商品信息的主要界面。

按不同的分类浏览(女装、男装、童装、品牌),不同的分类其商品信息也不同,但功能风格相同,在这里只给出女装的展示界面。

每种产品都以小图片和简介的形式展示,单击“查看详情”按钮可以查看商品的详细信息和放大图片,以直观的形式介绍产品。

另外在该界面中,用户可以直接注册和登录,还有企业的常用联系方式、商品的类别,从而为用户的操作提供了方便。

产品展示界面如图5.9所示。

图5.9产品展示界面

第6章系统代码设计

6.1软件的体系结构

本系统软件层结构分为4层:

即表示层、业务逻辑层、持久化层和数据库层。

各层实现的具体方法如下。

1.表示层

表示层提供与用户交互的界面,用Web页面实现。

2.业务逻辑层

业务逻辑层实现各种业务逻辑。

这一层在系统中的体现是分为两个方面的:

①封装并且分层的纯Java应用程序,为②提供API,相当于做成组件的形式。

②在Web页面中实现各种业务,在这里调用①中提供的各种接口。

其中,在①里提到的纯Java应用程序又分为两类:

即持久化类和业务逻辑类,下面将分别进行介绍。

(1)持久化类

Hibernate提供了从映射文件到Java源代码的转换工具,名为hbm2java工具。

执行该任务的Java类为net.sf.hibernate.tool.hbm2java.CodeGenerator,可以用ANT工具来运行它,在build.xml文件中定义codegentarget,代码如下:

--Generatethejavacodeforallmappingfilesinoursourcetree-->

description="GenerateJavasourcefromtheO/Rmappingfiles">

--TeachAnthowtouseHibernate'scodegeneration

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1