版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录一、概述 21、项目背景 22、编写目的 23、软件定义 24、开发环境 3二、需求分析 41、问题的提出 42、需完成的功能 43、E-R图 6三.数据表 9四、视图,索引,数据库权限 14五、软件功能设计 151、功能表 152.功能描述 16六、程序代码及控件描述 17七、总结 22
一、概述
1、项目背景
2、编写目的掌握数据库设计原理及mysql,JSP,以及JDBC的使用。首次应用MVC模式进行开发,结合JSP,Tomcat和JavaBean,通过Servlet容器实现JSP与JavaBean的控制,并且使用mysql对后台数据进行控制。
3、软件定义我小组开发的购物系统实现了一般购物网站的基本功能,提供前台的用户购物端与后台的系统管理端,前台为用户提供注册登录、浏览与查询商品信息、处理用户的购买与订单交易信息等等,后台主要提供用户管理、商品信息管理、订单管理等功能。本系统具有良好的交互界面,考虑到一些实际问题,简化了业务处理,在系统的安全性方面也没有做响应的保护,这是系统的不足之处。
4、开发环境操作系统:win2000以上版本;网络服务器:Tomcat5.x以上版本;运行环境:JDK1.5以上版本;数据库服务器:mysql数据库驱动程序:jdbc
二、需求分析
1、问题的提出随着新一代技术的发展,人们思想的进步。越来越多的人选在在网上购物,这不但很有效的带动了经济的发展速度,同时,也给人们带来了生活上的便利。本系统的销售用户为提供电子商务的商家,利于起进行网上管理,网上销售,网上分发。而使用者则除商家外,还包括为数众多,且规模日益增长的网上购物一族。在计算机网络,数据库和现有操作系统上,利用现有的软件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的网上购物系统,实现销售的自动化,为顾客和商家都提供准确、精细、迅速的销售信息。
2、需完成的功能根据可行性研究的结果和客户的要求,分析现有情况及问题,采用Blient/Server结构,将网上购物系统划分为多个模块:注册登录模块,商品查询模块,购物车模块,订单处理模块,系统管理模块。
(1)基本要求:管理员获取系统最新信息,查询订单等内容。购物者登录后,可以进行网上在线购物,查询和浏览商品,将商品放入购物车,在线支付,查看订单和积分等;管理员可进行后台管理,管理会员信息,商品分类,商品信息,订单信息等。管理员亦可发布最新公告或者优惠信息以及其他一些通知。
(2)具体要求本系统为中小型购物网站建立一个完善、高效的网上购物系统,按照网站的业务逻辑分为登录注册模块、商品信息查询模块、购物车模块、订单处理模块、以及系统管理模块。其中,系统管理模块有分为用户管理、商品管理、交易信息管理等部分。登录、注册模块,主要处理用户的登录需求、用户信息维护,以及系统安全性的维护,防止系统被侵入或攻击。商品信息查询模块,负责提供各类商品的信息给用户,并处理商品信息的搜索功能。购物车模块主要保存与维护用户选购商品的信息。订单处理模块,处理用户的订单信息。系统管理模块,面向网站的管理员,处理商品信息的录入,修改以及其他系统信息的日常维护事务。系统管理模块主要分为用户信息管理、商品信息管理、交易信息管理。。
3、E-R图订单用户购物车订单明细商品包含包含包含包含管理员商品类别
编号提示问题用户用户名联系电话个人主页真实姓名性别自我介绍电子邮件提示答案兴趣爱好密码库存折扣名称商品描述是否推荐价格编号类别编号制造商商品
订单日期收货地址收件人订单总额订单处理日邮政编码用户姓名用户编号收货人订单行号商品名称商品数量订单号订单明细商品编号商品价格描述编号名称订单状态商品类别订单
订单用户购物车订单明细商品包含包含包含包含管理员商品类别编号提示问题用户用户名联系电话个人主页真实姓名性别自我介绍电子邮件提示答案兴趣爱好密码库存折扣名称商品描述是否推荐价格编号类别编号制造商商品订单日期收货地址收件人订单总额订单处理日邮政编码用户姓名用户编号收货人订单行号商品名称商品数量订单号订单明细商品编号商品价格描述编号名称订单状态商品类别订单三.数据表
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(商品数量)|UserInfo(用户信息表)Column
Name
Date
Type
Width空值情况UserNameChar20主键PwdChar15非空EmailChar50非空RealNameChar20非空GenderChar10非空QuestionChar50非空AnswerChar50非空MyPageCha30空HobbiesChar50空SelfintroChar100空Goods(商品表)Column
Name
Date
Type
Width空值情况GIDChar15主键GNameChar20非空GtypeIDChar15)外键GpriceDecimal10,2非空GdiscountDecimal10,2非空GdescChar200非空GsupplierChar200非空GamountInt空GprferredInt空GpicChar50空GoodsType(商品类别表)Column
Name
Date
Type
Width空值情况TypeIDChar15主键TypeNameChar20非空TypeDescChar50空Orders(订单表)Column
Name
Date
Type
Width空值情况OrderIDInt主键UserNameChar20非空OrderDateDatetime非空AddressChar50非空PhoneChar20非空LinkmanChar20非空PostcodeChar10非空OrderSumInt非空DealDateDatetime非空StatusChar10空NoteChar50空OrdersDetail(订单明细表)Column
Name
Date
Type
Width空值情况OrderIDInt非空OrderSeqInt非空GoodsIDChar10外键GoodsNameChar20非空GoodsPriceDecimal10,2非空GoodsAmountInt非空GoodsDiscountDecimal10,2非空ShopCart(购物车表)Column
Name
Date
Type
Width
空值情况UserNameChar20非空GoodsIDChar15外键GoodsAmountInt空四、视图,索引,数据库权限本系统并没有创建显示的索引。而是只使用了主键自带的索引功能。由于时间仓促加上对mysql数据库操作语言的不熟悉,并没有在系统中创建相关的用户权限。只是把数据库的一个管理员的帐号和密码用在系统的连接中,并以管理员的身份对数据库中的表进行所有的查询和更新操作。当然这样是很不安全的。但为了提高开发进度,在此仅完成了基本的系统模型,以便后面的扩展。
五、软件功能设计
1、功能表
JavaBeanJavaBeanJavaBeanJDBCServletJSP浏览器Tomcat服务器客户端登录系统验证用户系统主窗口系统管理模块订单处理模块购物车模块商品查询模块用户信息维护
JavaBeanJavaBeanJavaBeanJDBCServletJSP浏览器Tomcat服务器客户端登录系统验证用户系统主窗口系统管理模块订单处理模块购物车模块商品查询模块用户信息维护2.功能描述注册登录模块:注册登录模块,处理新用户的注册、用户的权限验证、用户个人信息的修改、以及登录的有效性、安全性验证。用户信息主要包括:用户名、密码、个人基本信息(真实姓名、性别、出生年月、联系方式等)。为了防止恶意注册以及黑客侵入,在注册、登录时,由服务器自动随机生成四位验证码,并生成验证码图片,以此来保证系统的安全性。商品查询模块:商品查询模块,处理商品详细信息的列表,商品信息的模糊查询、组合查询。商品信息列表,将商品的详细信息(图片、价格、描述等)列表显示,并可以按照商品分类来显示不同商品信息。模糊查询,根据商品名称的关键字对商品进行查询,将与关键字类似或匹配的商品信息列表显示。组合查询,综合商品的各种属性信息来进行查询,可以搜索的商品组合属性包括,商品编号、名称,商品类别,商品价格,以及商品生产制造商等等。购物车模块:购物车模块,负责用户选购商品,处理购物车,以及购物车的维护。用户可以将感兴趣的商品放入购物车,也可以将所选购的商品拿出购物车。若用户在选购商品30天内没有提交订单,系统将自动放弃购物车里的商品,并通知用户。订单处理模块:订单处理模块,负责用户生成订单、提交订单,以及订单信息的维护。用户可以生成订单、提交订单。生成订单后,如果用户确认订单信息无误,则可以提交订单,提交订单后购买交易才正式成立。生成订单后,用户也可以放弃订单,取消交易。另外,此模块还提供订单详细信息的查询,订单信息搜索等功能,帮助用户查看订单信息。系统管理模块:系统管理模块,分为用户信息管理,商品信息管理,订单交易信息管理三部分。用户信息管理,包括的功能有:查看用户信息,查看哪些用户正在登录,统计当天的访问流量,删除恶意用户信息等。商品信息管理,包括的功能有:商品详细信息的录入,商品分类信息的录入,商品信息的修改等订单交易信息管理,包括的功能有:查看已提交订单的信息,处理已提交订单等等。六、程序代码及控件描述
1.数据库连接类:DBConnectionManager.java。使用jdbc对mysql数据库进行连接。在此使用的连接字如下,直接对netshop数据库进行连接,在这个数据库中包含了上诉的数据库:packagedbmanager;importjava.sql.*;publicclassDBConnectionManager{ privateStringdriverName="com.mysql.jdbc.Driver"; privateStringurl="jdbc:mysql://localhost:3306/netshop"; privateStringuser="root"; privateStringpassword="861478";…… publicConnectiongetConnection(){ try{ Class.forName(driverName); returnDriverManager.getConnection(url,user,password); } catch(Exceptione){ e.printStackTrace(); returnnull; } }} 2.数据查询与更新管理类DBSQLManager.java。通过调用类DBConnectionManager的getConnection类获得一个连接,然后由该连接得到一个声明Statement。用此声明可以用于后面sql语句的执行,并将结果集写入DBSQLManager的ResultSet属性之中。3.javabean。在本系统中使用了三个javabean,分别是Goods,Orders,Orders_Detail。其中Goods用于记录物品的基本信息,主要用于存储并传递表Goods中的记录内容。orders则是用于存储并传递表Orders中的记录内容。Orders_Detail则是用于存储和传递ordersDetail表里的记录。Javabean的详细代码可以查看netShop\src文件夹里的java文件。4.系统模块:商品管理模块系统流程图否否是是是是否否是删除商品成功修改商品成功新增商品成功查询结果删除存盘成功否确认删除商品修改存盘成功商品存盘成功类别、价格为空查看商品信息删除商品修改商品信息修改商品输入商品信息新增商品输出结果执行查询SQL拼接查询SQL输入关键字商品查询商品管理否否是是是是否否是删除商品成功修改商品成功新增商品成功查询结果删除存盘成功否确认删除商品修改存盘成功商品存盘成功类别、价格为空查看商品信息删除商品修改商品信息修改商品输入商品信息新增商品输出结果执行查询SQL拼接查询SQL输入关键字商品查询商品管理商品分类管理模块系统流程图是是是是否否否否否是删除存盘成功与否确认删除分类修改存盘成功与否存盘成功与否名称、描述为空查看分类信息新增商品分类修改分类信息修改商品分类输入分类信息新
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论