网上购物系统.docx

上传人:b****6 文档编号:3699106 上传时间:2022-11-24 格式:DOCX 页数:27 大小:493.88KB
下载 相关 举报
网上购物系统.docx_第1页
第1页 / 共27页
网上购物系统.docx_第2页
第2页 / 共27页
网上购物系统.docx_第3页
第3页 / 共27页
网上购物系统.docx_第4页
第4页 / 共27页
网上购物系统.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

网上购物系统.docx

《网上购物系统.docx》由会员分享,可在线阅读,更多相关《网上购物系统.docx(27页珍藏版)》请在冰豆网上搜索。

网上购物系统.docx

网上购物系统

目录

题目:

网上购物系统0

一、概述1

1.1设计目的1

1.2软件定义1

1.3开发环境1

二、需求分析1

2.1设计背景1

2.2功能模块2

三、系统分析、设计及建模2

3.1系统分析2

3.2系统设计4

3.3UML建模5

3.3.1系统用例图5

3.3.2系统活动图6

3.3.3系统顺序图7

3.3.4系统状态图8

3.3.5系统协助图8

3.3.6系统类图8

3.3.7系统部署图10

4、数据库设计10

4.1E-R模型10

4.2数据表设计10

4.3视图、索引、数据库权限12

五、编码系统实现12

5.1数据库连接类12

5.2用户管理模块的实现12

5.3用户管理的Action类13

5.4商品浏览模块的实现14

5.5购物车管理模块的实现15

5.6订单管理模块的实现17

5.7主界面的实现19

六、系统测试22

6.1前台测试22

6.2后台测试23

七、设计优点及不足24

八、课设小结24

九、参考文献24

1、概述

1.1设计目的

掌握数据库设计原理及mysql,JSP,以及JDBC的使用。

首次应用MVC模式进行开发,结合JSP,Tomcat和JavaBean,通过Servlet容器实现JSP与JavaBean的控制,并且使用mysql对后台数据进行控制。

1.2软件定义

开发的购物系统实现了一般购物网站的基本功能,提供前台的用户购物端与后台的系统管理端,前台为用户提供注册登录、浏览与查询商品信息、处理用户的购买与订单交易信息等等,后台主要提供用户管理、商品信息管理、订单管理等功能。

本系统具有良好的交互界面,考虑到一些实际问题,简化了业务处理,在系统的安全性方面也没有做响应的保护,这是系统的不足之处。

1.3开发环境

操作系统:

WindowsXP;

运行环境:

JDK1.5以上版本;

JSP服务器:

Tomcat 5.0以上;

浏览器:

IE 8;

数据库服务器:

mysql;

数据库驱动程序:

jdbc.

2、需求分析

2.1设计背景

随着新一代技术的发展,人们思想的进步。

越来越多的人选在在网上购物,这不但很有效的带动了经济的发展速度,同时,也给人们带来了生活上的便利。

本系统的销售用户为提供电子商务的商家,利于起进行网上管理,网上销售,网上分发。

而使用者则除商家外,还包括为数众多,且规模日益增长的网上购物一族。

在计算机网络,数据库和现有操作系统上,利用现有的软件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的网上购物系统,实现销售的自动化,为顾客和商家都提供准确、精细、迅速的销售信息。

2.2功能模块

根据可行性研究的结果和客户的要求,分析现有情况及问题,采用Blient/Server结构,将网上购物系统划分为多个模块:

注册登录模块,商品查询模块,购物车模块,订单处理模块,系统管理模块。

(1)基本要求:

①管理员获取系统最新信息,查询订单等内容。

②购物者登录后,可以进行网上在线购物,查询和浏览商品,将商品放入购物车,在线支付,查看订单和积分等;

③管理员可进行后台管理,管理会员信息,商品分类,商品信息,订单信息等。

④管理员亦可发布最新公告或者优惠信息以及其他一些通知。

(2)具体要求

本系统为中小型购物网站建立一个完善、高效的网上购物系统,按照网站的业务逻辑分为登录注册模块、商品信息查询模块、购物车模块、订单处理模块、以及系统管理模块。

其中,系统管理模块有分为用户管理、商品管理、交易信息管理等部分。

登录、注册模块,主要处理用户的登录需求、用户信息维护,以及系统安全性的维护,防止系统被侵入或攻击。

商品信息查询模块,负责提供各类商品的信息给用户,并处理商品信息的搜索功能。

购物车模块主要保存与维护用户选购商品的信息。

订单处理模块,处理用户的订单信息。

系统管理模块,面向网站的管理员,处理商品信息的录入,修改以及其他系统信息的日常维护事务。

系统管理模块主要分为用户信息管理、商品信息管理、交易信息管理。

3、系统分析、设计及建模

3.1系统分析

(1)注册登录模块:

注册登录模块,处理新用户的注册、用户的权限验证、用户个人信息的修改、以及登录的有效性、安全性验证。

用户信息主要包括:

用户名、密码、个人基本信息(真实姓名、性别、出生年月、联系方式等)。

为了防止恶意注册以及黑客侵入,在注册、登录时,由服务器自动随机生成四位验证码,并生成验证码图片,以此来保证系统的安全性。

(2)商品查询模块:

商品查询模块,处理商品详细信息的列表,商品信息的模糊查询、组合查询。

1)商品信息列表,将商品的详细信息(图片、价格、描述等)列表显示,并可以按照商品分类来显示不同商品信息。

2)模糊查询,根据商品名称的关键字对商品进行查询,将与关键字类似或匹配的商品信息列表显示。

3)组合查询,综合商品的各种属性信息来进行查询,可以搜索的商品组合属性包括,商品编号、名称,商品类别,商品价格,以及商品生产制造商等等。

(3)购物车模块:

购物车模块,负责用户选购商品,处理购物车,以及购物车的维护。

用户可以将感兴趣的商品放入购物车,也可以将所选购的商品拿出购物车。

若用户在选购商品30天内没有提交订单,系统将自动放弃购物车里的商品,并通知用户。

(4)订单处理模块:

订单处理模块,负责用户生成订单、提交订单,以及订单信息的维护。

用户可以生成订单、提交订单。

生成订单后,如果用户确认订单信息无误,则可以提交订单,提交订单后购买交易才正式成立。

生成订单后,用户也可以放弃订单,取消交易。

另外,此模块还提供订单详细信息的查询,订单信息搜索等功能,帮助用户查看订单信息。

(5)系统管理模块:

系统管理模块,分为用户信息管理,商品信息管理,订单交易信息管理三部分。

1)用户信息管理,包括的功能有:

查看用户信息,查看哪些用户正在登录,统计当天的访问流量,删除恶意用户信息等。

2)商品信息管理,包括的功能有:

商品详细信息的录入,商品分类信息的录入,商品信息的修改等

3)订单交易信息管理,包括的功能有:

查看已提交订单的信息,处理已提交订单等等。

3.2系统设计

图3-1系统功能模块

图3-2系统体系结构

3.3UML建模

3.3.1系统用例图

图3-3系统用例图

 

3.3.2系统活动图

图3-4用户注册活动图

图3-5商品浏览活动图

3.3.3系统顺序图

图3-6将商品加入购物车时序图

图3-7从购物车中删除商品的时序图

 

3.3.4系统状态图

图3-8用户信息状态图

3.3.5系统协助图

图3-9网上购物协作图

3.3.6系统类图

图3-10类包图

图3-11实体类关联图

图3-12界面类关联图

3.3.7系统部署图

3-13系统部署图

4、数据库设计

4.1E-R模型

4.2数据表设计

Userinfo(用户信息)

|UserID(用户编号)|UserName(用户姓名)|Pwd(用户密码)|Email(电子邮件)|RealName(真实姓名)|Gender(性别)|Question(提示问题)|Answer(提示答案)|MyPage(个人主页)|Hobbies(兴趣爱好)|Selfintro(自我介绍)|

---------------------------------------------------------------------

Goods(商品表)

|GID(商品编号)|GName(商品名称)|GtypeID(类别编号)|Gprice(商品价格)|Gdiscount(商品折扣率)|Gdesc(商品描述)|Gsupplier(制造商)|Gamount(库存量)|Gprferred(是否推荐)|Gpic(商品图片)|

---------------------------------------------------------------------

GoodsType(商品类别表)

|TypeID(类别编号)|TypeName(类别名称)|TypeDesc(类别描述)|

---------------------------------------------------------------------

Orders(订单表)

|OrderID(订单号)|UserID(用户编号)|UserName(用户名)|OrderDate(订单日期)|Address(收货地址)|Phone(联系电话)|Linkman(联系人)|Postcode(邮政编码)|OrderSum(订单总额)|DealDate(订单处理日期)|Status(订单状态)|Note(备注)|

---------------------------------------------------------------------

OrdersDetail(订单明细表)

|OrderID(订单号)|OrderSeq(订单行号)|GoodsID(商品编号)|GoodsName(商品名称)|GoodsPrice(商品价格)|GoodsAmount(商品数量)|GoodsDiscount(商品折扣率)|

---------------------------------------------------------------------

ShopCart(购物车表)

|UserID(用户编号)|UserName(用户名)|GoodsID(商品编号)|GoodsAmount(商品数量)

4.3视图、索引、数据库权限

本系统并没有创建显示的索引。

而是只使用了主键自带的索引功能。

由于时间仓促加上对mysql数据库操作语言的不熟悉,并没有在系统中创建相关的用户权限。

只是把数据库的一个管理员的帐号和密码用在系统的连接中,并以管理员的身份对数据库中的表进行所有的查询和更新操作。

当然这样是很不安全的。

但为了提高开发进度,在此仅完成了基本的系统模型,以便后面的扩展。

5、编码系统实现

5.1数据库连接类

使用jdbc对mysql数据库进行连接。

在此使用的连接字如下,直接对netshop数据库进行连接:

class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

org.hibernate.dialect.MySQLDialect

domain/uservo.hbm.xml

domain/cartvo.hbm.xml

domain/productinfovo.hbm.xml

domain/productsortvo.hbm.xml

domain/ordersvo.hbm.xml

5.2用户管理模块的实现

用户管理模块包括用户登录、注册和注销三大功能,其具体实现过程详述如下。

1.用户管理数据库操作接口类UserDAO及其实现类UserDAOImpl

2.用户管理业务操作接口类UserService及其实现类UserServiceImpl

接口类UserService的代码如下。

packageservice;

importdomain.UserVo;

publicinterfaceUserService{

publicUserVofindByID(intuserID);

publicUserVofindByProperty(StringpropertyName,StringpropertyPsw);

publicvoidsave(UserVonewUser);

}

5.3用户管理的Action类

1.用户登录管理

LoginAction类中的execute()方法实现用户登录的功能,该方法依赖于Service层,登录时需要验证用户输入的用户名和密码是否存在,如果存在需要将该用户放入Session对象中,以便该用户在购买商品或浏览该网站其它网页时能很好的确定用户身份。

2.用户注册管理

RegisterAction类中的execute()方法实现用户注册的功能,该方法依赖于Service层。

注册时首先需要对用户输入的信息进行校验,RegisterAction类需要验证用户输入的用户名和密码是否存在,如果存在需要重新输入。

3.用户注销管理

LoginOut类中的execute()方法实现用户注销的功能。

注销时只需要将登录时加载到Session中的user对象删除即可。

4.用户管理模块的相关配置

(1)在struts.xml中的配置

(2)在applicationContext.xml中的配置

(3)在struts.properties的配置

struts.objectFactory=spring

struts.action.extension=action

struts.locale=en_GB

struts.custom.i18n.resources=Application

(4)在web.xml中的配置

 

5.4商品浏览模块的实现

商品浏览模块主要实现按照商品类别进行查询的功能,其效果图如图5-1所示,具体实现过程详述如下。

 

图5-1 商品浏览模块的界面showProduct.jsp

 

1.商品浏览模块的数据库操作接口类ProductInfoDAO及其实现类ProductInfoDAOImpl

  接口类ProductInfoDAO的代码如下。

packagedao;

importjava.util.List;

importdomain.ProductInfoVo;

publicinterfaceProductInfoDAO{

publicProductInfoVofindByID(intid);

publicListfindBySortId(intsortId);

}

  

2.商品浏览模块的业务操作接口类ProductInfoService及其实现类

  接口类ProductInfoService的代码如下。

packageservice;

importjava.util.List;

importdomain.ProductInfoVo;

publicinterfaceProductInfoService{

publicProductInfoVofindByID(intid);

publicListfindBySortId(intsortId);

}  

3.商品类别的数据库操作接口类ProductSortDAO及其实现类ProductSortDAOImpl

  接口类ProductInfoDAO的代码如下。

packagedao;

importdomain.ProductSortVo;

publicinterfaceProductSortDAO{

publicProductSortVofindByID(intid);

publicintfindBySortName(StringsortName);

} 

4.商品类别的业务操作接口类ProductSortService及其实现类

  接口类ProductSortService的代码如下。

packageservice;

importdomain.ProductSortVo;

publicinterfaceProductSortService{

publicProductSortVofindByID(intid);

publicintfindBySortName(StringsortName);

}  

5.商品浏览模块的Action类

SelectProductBySort类中的execute()方法实现按照商品分类浏览商品的功能,该方法依赖于Service层。

6.商品浏览模块的相关配置

(1)在struts.xml中的配置

(2)在applicationContext.xml中的配置

5.5购物车管理模块的实现

  购物车模块主要实现登录用户对已选购的商品的管理,其包含对已经选购的商品的查看和删除操作。

假定已经登录,该用户查看购物车中商品的详细信息的效果图如图5-2所示,具体实现过程详述如下。

 

图5-2 购物车管理模块的界面showCart.jsp的运行效果

1.购物车模块的数据库操作接口类CartDAO及其实现类CartDAOImpl

  接口类CartDAO的代码如下。

packagedao;

importjava.util.List;

importdomain.CartVo;

publicinterfaceCartDAO{

publicListfindALL();

publicListfindByUserId(intuserId);

publicvoidsave(CartVonewCart);

publicvoiddelete(intcartId);

}

  

2.购物车模块的业务操作接口类CartService及其实现类

  接口类CartService的代码如下。

packageservice;

importjava.util.List;

importdomain.CartVo;

publicinterfaceCartService{

publicListshowCart();

publicListshowCartByUserId(intuserId);

publicvoidsave(CartVonewCart);

publicvoiddelete(intcartId);

}

 

3.购物车模块的Action类

  购物车的Action类要查询出来的商品的详细信息放到Cart类生成的对象中,以便在页面上显示。

其中Cart类在domain文件夹中,该文件的代码如下。

packagedomain;

publicclassCart{

privateintuserID;

privateStringuserName;

privateintproductId;

privateStringproductName;

privateintsortId;

privateStringsortName;

privatefloatprice;

privatefloatdiscount;

privateStringdiscription;

privateintcartId;

privateintcount;

//省略所有属性的getter、setter方法。

}

 

4.购物车模块的相关配置

(1)在struts.xml中的配置

/error.jsp

/showCart.jsp

/error.jsp

/showProduct.jsp

/showCart.jsp

(2)在applicationContext.xml中的配置

5.6订单管理模块的实现

订单管理模块主要实现下订单的功能,需要在页面上输入用户的联系方式和通讯地址,以便用户可以收到自己选择的商品,并生成订单。

其效果图如图5-3所示,具体实现过程详述如下。

 

图5-3 订单管理模

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

当前位置:首页 > 高中教育 > 语文

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

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