计算机毕业设计 jsp网上图书超市ssh 毕设

1.1 演示视频:第4章  总体设计


https://www.bilibili.com/video/BV1Ue411q7eR/

4.1 系统模块总体设计

利用层次图来表示系统中各模块之间的关系。层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素(不能再分割的元素)。随着这种结构的精细化,层次方框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。从对顶层的信息的分类开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。

本系统一共分为前台和后台两大模块,两个模块之间虽然在表面上是相互独立的,但是在对数据库的访问上是紧密相连的,各个模块访问的是同一个数据库,只是所访问的表不同而已。每个模块的功能都是按照在调研中搜集的资料进行编排制作的。依据上述功能分析,系统在两个模块的基础上每一个模块又分为几个模块。

1.前台系统功能模块分为

(1)图书展台模块:通过新品上架,分页显示特价图书,图书销售排行展示网站的所有图书;

(2)图书查询模块:按图书的类别查询图书的相关信息;

(3)购物车模块:用户添加图书至购物车,查看购物车中的图书,从购物车中移除不满意的图书,清空购物车中的产品,修改所要购买的图书的数量;

(4)收银台模块:用户满意购物车中的产品后进行结账并填写订单信息;

(5)用户维护模块:为用户提供了用户注册、用户登录、用户资料修改以及找回密码的功能;

(6)订单查询模块:用户通过查看订单能够了解到自己的当前订单信息及历史订单记录;

(7)公告浏览模块:用户通过浏览公告信息,能够及时了解到网站最新的各种信息。

(8)留言模块:客户可以进行留言给我们提意见,我们在不断地改进中前进。

系统前台用户功能结构图如图3-1所示。


901965b443f4fdd187b24f0b317c1d51.jpeg

图3-1 系统前台用户功能结构图


2.后台系统功能模块分为

(1)图书管理模块:按类别查看图书,对图书的信息进行维护;

(2)用户管理模块:为了保护用户的信息,此模块与前台用户维护的区别是管理员只能查看用户信息和删除操作;

(3)管理员维护模块:这是对管理员的信息进行维护,可以修改管理员的信息。

(4)订单管理模块:管理员查询订单,查看订单详细信息,删除订单信息,进行订单受理;

(5)公告管理模块:管理员公告浏览,公告信息维护;

(6)留言模块:管理员可以查看客户的留言,对留言进行维护。

系统后台管理员功能结构图如图3-2所示。

0433f7adb52a99826e892177c5930841.jpeg

图3-2 系统后台管理员功能结构图

4.2 数据库设计

对于一个电子商务网站而言,为了支持较大的访问量带来的数据访问需求,使用桌面型的数据库管理系统是不能满足需要的,而且安全性也没有充分保障。因此,需要使用大型商业化企业级服务用途的数据库管理系统,如SQL Server,Oracle等。本系统采用Microsoft SQL Server 2005 数据库管理系统。

4.2.1 数据分析

对于本系统的数据库的需求而言,由于其主要是用于信息的提供、保存、更新和查询等。因此,需要分析该系统功能所隐含的对数据应用的需求,从而确定数据库的结构。

(1)用户注册、登录、验证等功能需要对用户信息建立数据表,其中的数据项可能包括用户E_mail、昵称、密码、住址等;

(2)查看图书分类信息和图书详细信息等功能既需要对图书大小类别进行管理,也需要针对每一个图书进行管理,因此至少需要两张数据表;

(3)用户购物后产生的订单需要进行管理,这里也包括订单的基本信息和详细信息等;

(4)订单生成后,在订单处理的过程中,需要出货等,因此可能需要记录订单的发送情况;

(5)需要系统管理员对该系统进行管理,因而需要建立管理员信息数据表,其中的数据项包括管理员ID、密码等。

(6)客户要进行留言,所以必须建立留言表,其中包括留言标题、留言日期等。


这样,至少要创建如下的数据结构和数据项

(1)用户信息,包括用户ID,用户名等数据项;

(2)管理员信息,包括管理员ID,密码等数据项;

(3)图书信息,包括图书ID,产品名称、单价、特价等数据项;

(4)图书类别信息,包括电子ID,类别名称等数据项;

(7)订单信息,包括订单ID,用户编号,订货地址等数据项;

(8)订单明细信息,包括订单ID,图书ID,订货时间等数据项;

(9)公告信息,包括公告ID,公告名称及内容等数据项;

(10)留言信息,包括留言标题,留言日期,留言内容等。

第5章  详细设计与实现

5.1 系统运行平台设置

本系统的运行平台设置分为硬件环境和软件环境。

5.2 运行环境

1.硬件环境

系统的硬件环境配置为处理器Pentium III800,内存512M,硬盘1G。

2.软件环境

系统的软件环境配置为Windows XP操作系统,SQL Server 2005数据库,JDK1.5、MyEclipse3.1开发工具包和Tomcat6.0服务器。

5.3  开发工具及技术简介

以下内容是对本系统所采用的开发工具和技术进行的简单介绍。

5.3.1 开发工具简介

MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。

在结构上,MyEclipse的特征可以分为7类:(1)J2EE模型;(2)WEB开发工具;(3)EJB开发工具;(4)应用程序服务器的连接器;(5)J2EE项目部署服务;(6)数据库服务;(7)MyEclipse整合帮助。

对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。

简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。

SQL Server 2005是一种采用T-SQL语言,基于C/S模式的关系型数据库管理系统。SQL Server 2005存储和管理数据有以下优点

(1)每个数据项都存储在中央位置,所有用户都可在这个位置使用它们;

(2)各个客户端上不单独存储数据项复本,从而消除了因用户不得不确保使用的信息相同所带来的麻烦。系统不需要确保使用当前值更新所有数据复本,因为中央位置仅有一个复本;

(3) 可以在服务器上一次性定义业务和安全规则,并对所有的用户平等执行;

(4)可以在数据库内通过使用约束、存储过程和触发器来强制执行规则。还可在服务器应用程序中执行规则,因为这些应用程序也是许多客户端访问的中央资源;

(5)关系数据库服务器只返回应用程序所需要的数据,优化了网络流量;

(6)最大程度地降低硬件的成本,由于数据不是存储在每个客户端上,客户端不必耗费磁盘空间来存储数据。客户端无需在本地增加管理数据的功能,同时,服务器不需将处理能力耗费在显示数据上;

(7)可以配置服务器以优化检索数据所需的磁盘输入/输出容量,配置客户端以优化从服务器检索数据的格式;

(8)可以将服务器存储在一个相对安全的位置,并配备如不间断电源供应系统这样的设备,这比完全保护每个客户端更经济;

(9)维护任务(例如备份和恢复数据)得到简化,因为这些任务都可以集中在中央服务器上执行。

5.3.2 技术简介

本系统采用MVC框架,MVC(Model-View-Controller)是一种设计 模式,它强制性地把应用程序的输入、处理和输出分开。MVC把应用程序分成3个核心:模型层、视图层和控制层,它们分别担负不同的任务。其中视图层向用户显示相关的数据,并能接受用户的输入数据,但是它并不进行任何实际的业务处理。模型层表示业务数据和业务逻辑。控制层接收用户输入并调用模型和视图去完成用户的需求。

本系统需要用到的Java相关技术有jsp技术、servlet技术、jdbc技术、SSH框架。其中,关键的技术难点在于Struts技术的运用。Struts技术是基于MVC的Web应用框架。在Struts框架中,模型层由实现业务逻辑的JavaBean组件构成,控制层由ActionServlet和Action来实现,视图层由一组JSP文件构成。

5.4 系统首页设计

本系统网站的主界面设计结构采用了上左右的结构,上部分为主功能菜单区,主要是显示网站的主功能,左侧为最新图书,特价区域,我的购物车,右部分为我的订单区,我的留言 主要是为方便用户提供了一些最新上架的图书信息。界面设计如图3-1所示。

d24f4fc50f59b77eb7cb7c33a86d1c2c.jpeg


图3-1 系统首页

5.5 系统前台基本功能设计与实现

本节对系统前台主要功能设计进行详细的说明。

5.5.1 用户维护模块设计与实现

由于网上购物必须保证用户的正确性、购物的安全性,需要对用户资料进行有效的管理,因此用户管理是电子商务网站的重要内容。它主要包括用户注册、登录和验证、用户注册资料的修改更新和用户注销等功能。

1.注册

(1)实现目标

用户单击注册后需要输入密码和确认密码、用户真实姓名、住址、性别、E_mail、QQ。用户只须填写一个Web表单。这里需要用户通过E_mail注册是考虑到两点:第一,用户的E_mail是惟一的;第二,通过用户的E_mail可以很方便快捷的与用户取得联系。用户在提交注册信息后,系统会对注册页面填写的正确性进行检查。对于不符合要求的填写会给出必要的提示,并返回修改;对于符合要求的注册表单,用户提交信息后也要返回相应的欢迎信息,用户提交的正确注册信息将被存入系统的数据库中。界面的设计如图3-2所示。

6db304fcaa57b3f1249f3d1a94a615a7.jpeg


图3-2 用户注册模块

2.登录和验证

(1)用户登录程序流程描述

当用户输入用户名和密码后首先要进行身份验证,如果用户存在,则成功登录,反之,如果用户不存在,提示错误信息“输入的用户名或密码不存在,请注册”,返回登录界面重新输入用户名和密码。用户登录的程序流程图如图3-3所示。


b9c97440e4a8889dfbd416814dd8af70.jpeg

图3-3 用户登录程序流程图


(2)实现目标

对于本系统的购物过程而言,在用户浏览图书时,可以不进行登录,只有在使用购物车时,才需要登录,以完成整个购物过程。用户登录用于验证用户的用户名和密码,然后决定顾客进入系统进行操作,如进行用户修改的操作,购物车和结帐的操作等。界面的设计如图3-4所示。


4508527c288592a3bd89b9f4f865aff4.jpeg





图3-4 用户登录模块

3.用户修改和注销

(1)实现目标

已注册的用户只要登录本系统后便可以通过单击用户修改按钮进行用户修改操作,在此页面中用户可以更改自己的帐户和详细信息,如可以修改密码、修改Email地址等个人信息。通过点击提交按钮完成修改操作。界面的设计如图3-5所示。

图3-5 用户修改模块

为了保证用户购物的安全性,系统提供了不关闭浏览器而退出图书在线销售系统的功能,注销功能是清除用户在使用或登录系统期间的所有Session信息。图书展示模块设计与实现

1.实现目标

为了方便顾客选购图书,本系统采用了两种展示产品的方式。一种是以类别查询为基础查看图书,另外一种是新品上架、特价产品和销售排行的展台。以销售排行查看图书为例,顾客在首页的的销售排行即可查看销售排行,方便顾客查看畅销的图书相关信息及详细信息。e6cb714153aaaa095598f332ccf88658.jpeg

图3-6 销售排行模块

2.实现过程

所属页面名:index.jsp

通过查询t_orderItem表中按销售额字段goods_quantity降序排列实现。

5.5.2 购物车模块的设计与实现

1.购物车程序流程描述

用户选购图书后添加到购物车中,在购物车中进行查看,同时对不满意的产品可以进行移除,对要购买的产品可以调整数量,移除产品和清空产品。用户决定购买产品后可以去收银台进行结账。购物车流程图如图3-7所示。

cab676695ab6f594b9d3624b79a717bf.jpeg

图3-7 购物车程序流程图


2.实现目标

用户购买产品的核心功能是购物车和订单提交。购物车模块的设计包括:顾客添加图书到购物车和顾客对购物车的管理,如更新购买的图书数量、清空购物车和将购物车中图书从购物车中移除等。购物车要具有持续性,而且不限制用户购买图书的数量,也就是购物车可以显示很多图书。界面的设计如图3-8所示。

3.实现过程

所属页面名:myCart.jsp核心代码参见附录3

页面设计如表3-8所示。


图3-8 购物车模块

5.5.3  收银台模块的设计与实现

1.实现目标

用户选择完图书后,需要确认购物车中内容,即结帐,点击下一步,此时页面跳转到结账页面。在结帐页面,需要用户填写联系地址、联系电话、付款方式和送货方式和备注信息,以便生成订单。当完成一次交易所需要的用户方面的信息都已齐全,只须生成订单即可进入配送过程。如果用户所填写的订单信息正确,系统会返回给用户此次交易所产生的订单号码。界面的设计如图3-9所示。


1bdb0cff2470bec8363f1cda8b88827f.jpeg


图3-9 结账模块

5.5.4 查看订单模块的设计与实现

1.实现目标

用户填写完订单并提交成功后可以通过查看订单按钮看到自己的订单及详细信息。界面的设计如图3-10所示。

4b789c76d8dd83adf3cad00483c07b87.jpeg


图3-10 查看订单模块

2.实现过程

所属页面名:myOrder.jsp

具体代码参见附录3。

5.5.5  公告浏览模块的设计与实现

1.实现目标

吸引顾客有很多种宣传措施,本系统采用公告的方式进行宣传。利用类似流动看板的方式显示公告信息。在顾客点击某一条公告信息时,系统可以自动弹出一个页面显示具体的公告信息。界面的设计如图3-11所示。

42cc41dd4bd041f0de53fbb14a471acc.jpeg


图3-11 公告浏览模块

2.实现过程

所属页面名:gonggaoDetailQian.jsp

首先使用gonggaoDAO中的save方法,将公告信息添加到数据库中,在用户点击页面中的公告后,通过gonggaoDAO下的findAll方法,将其调出,显示到页面中。

5.5.6 客户留言模块的设计与实现

1.实现目标

为了能够了解客户对我们的商品的满意程度,我们设计了留言模块,让用户能够在第一时间将问题反映给我们,以便我们及时改进。界面的设计如图3-12所示。

a4d6acf4b869744e84a517d0056fc006.jpeg

图3-12 公告浏览模块

2.实现过程

所属页面名:liuyanAll.jsp

首先通过判断session中的userName是否为空,如果为空,则只能先登录才能进行留言。如果不为空,则留言人中显示userName,使用获取系统时将来给留言时间赋值。客户在输入标题和内容后,将其存储到数据库中,在客户查看时再将其调出。

5.6  系统后台管理功能设计与实现

本节对系统后台功能设计进行详细的说明。

5.6.1 基本信息管理设计与实现

1.实现目标

该功能主要分布在管理员信息、用户信息、图书类别信息,订单信息,公告信息和留言信息的处理。对这些信息操作的主要功能详细设计包括对它们的添加、删除、更新和查询等操作,需要分别在基本信息中的每一个页面中设计这些功能。当对这些基本信息进行添加、删除和更新操作时,需要将这些操作所执行的结果返回到本系统的数据库中,并能够在相应的页面中刷新显示新的结果集。需要用SQL语句将这些信息添加到数据库中。模块的输出是操作信息成功的提示信息。对于在某一页面中的查询功能,此页面要能够刷新显示出此查询结果信息。以客户信息管理理为例。界面的设计如图3-13所示。

6ae181ef1ead0063d5221db1a78c0680.jpeg


图3-13 客户信息管理模块

2.实现过程

所属页面名:userMana.jsp

客户管理主要是使用userDAO中下的findById和findAll方法来删除和获取数据库中的数据。进入客户管理界面时通过findAll方法来显示所有用户的信息,点击删除时,通过findById方法获取指定的用户ID,使用sql语句进行操作。

5.6.2 订单信息管理设计与实现

1.实现目标

该模块是针对用户订单信息和订单明细信息的管理功能进行的详细设计,主要是对用户订单信息和订单明细信息的查看、删除和受理订单的操作。管理员应该可以查看系统中已处理的订单和未经处理的订单信息,用户订单信息和订单明细信息在不同的页面显示。界面的设计如图3-14所示。

     0f4490c47da8715eec0af6981d2a8119.jpeg


图3-14 订单管理模块

2.实现过程

所属页面名:orderMana.jsp

订单管理模块使用了buyAction中的方法,当用户提交订单时,订单状态默认为未受理。管理员查看订单时调用了orderMana()方法将订单显示到页面中,点击删除时调用orderDelByAd()方法将通过订单的ID对指定的订单进行那个删除操作,点击受理订单时调用orderShouli()方法将订单状态改为已受理。管理员查看订单明细时通过 orderDetail()方法通过订单ID将指定的订单明细显示到页面中。

具体代码参照附录3。

5.6.3  图书信息管理设计与实现

1.实现目标

在图书管理模块中除了基本的信息管理功能外,为了方便顾客浏览到图书的真实外貌,在添加图书模块中增加上传图书图片的功能。

管理员在图书添加页面中输入添加的图书基本信息,点击提交后进入上传图片页面。在商品信息管理中,我将商品分为特价和非特价商品来管理。此页面中能够显示出已输入的特价图书基本信息,在上传图片位置上添加文件后点击提交,提交成功后有提示信息弹出。在管理员查看商品信息时,将鼠标放到查看图片上就可以查看图片界面的设计如图3-15所示。


4b81a1af34b64792fd5e9a7f9352daeb.jpeg


图3-15 商品信息管理模块

2.实现过程

所属页面名:goodsManaYesTejia.jsp

本模块主要是对商品表进行管理,所以就是一些查询和删除操作,我在做的时候,主要讲商品分为特价和非特价商品,在管理时也是分开管理,主要通过判断goodsIsnottejia来区分是否为特价商品。

5.6.4  公告信息管理设计与实现

1.实现目标

在各大热门网站上都有公共的出现,该模块的建立也是为了通过实现发布公告,给顾客提供方便的操作,让客户能够及时的了解商城的活动情况。



2.实现过程

所属页面名:gonggaoMana.jsp

在gonggaoAction中,调用gonggaoAdd方法进行添加操作,使管理员能添加一个新公告,管理员查看时则调用了gonggaoMana()方法,来显示所有的公告信息,要进行删除操作就会调用gonggaoDel()方法进行删除。

5.6.5 留言信息管理设计与实现

1.实现目标

客户对商城的商品有任何意见,都可以在留言模块中进行留言,方便管理员查看,商城会及时处理问题。界面的设计如图3-17所示。

c6ebbe17fda5b88b8675da4e73e777e3.jpeg


图3-17 留言信息管理模块

2.实现过程

所属页面名:liuyanMana.jsp

留言功能,主要先依靠liuyanDAO.findAll方法来获取所有留言,然后调用liuyanMana来显示,管理员的添加操作是调用liuyanAdd方法实现的,留言的时间定义是用获取系统时间的方法来定义的。删除留言时则调用liuyanDel方法来实现。

5.7  本章小结

本章进行了此系统的详细设计的介绍,我们可以对本系统的设计有了一个细致全面的了解。前台模块详细介绍了用户维护、销售排行、购物车、结账、查看订单、留言模块和公告浏览模块的设计和实现的过程,同时后台模块介绍了客户信息管理、订单管理、图书信息管理、公告管理和留言管理的设计和实现的过程。本系统详细设计的原则是采用结构化的设计方法,改善控制结构,降低程序的复杂程度,从而提高程序的可读性、可测试性和可维护性。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

huida_kaifa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值