毕业设计(论文)-易买购物网设计与实现.doc

上传人:西安人 文档编号:3949686 上传时间:2019-10-11 格式:DOC 页数:50 大小:1.86MB
返回 下载 相关 举报
毕业设计(论文)-易买购物网设计与实现.doc_第1页
第1页 / 共50页
毕业设计(论文)-易买购物网设计与实现.doc_第2页
第2页 / 共50页
毕业设计(论文)-易买购物网设计与实现.doc_第3页
第3页 / 共50页
毕业设计(论文)-易买购物网设计与实现.doc_第4页
第4页 / 共50页
毕业设计(论文)-易买购物网设计与实现.doc_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《毕业设计(论文)-易买购物网设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-易买购物网设计与实现.doc(50页珍藏版)》请在三一文库上搜索。

1、毕 业 设 计题 目: 易买购物网设计与实现 专 业: 计算机网络 班 级: 网工3091 学 号: 092330010024 姓 名: XX 指导教师: XX 湖南科技职业学院电子信息工程与技术系二零一二年五月2湖南科技职业学院电子信息系毕业设计评语题目: 易买购物网设计与实现 专业: 计算机网络 班级: 网工3091 姓名: XX 学号: 0000000128473 毕业设计得分:答辩得分:综合评定:指导老师评语: 指 导 教 师(签字): 年 月 日答辩委员会(小组)评语:答辩委员会(小组)负责人(签字):年 月 日湖南科技职业学院电子信息工程与技术系毕业设计目 录摘 要4Abstrac

2、t5绪 论61.1 课题研究背景、意义及特点61.1.1 课题研究背景61.1.2 课题意义61.1.3 课题特点61.2 论文的组织71.3 相关知识综述71.3.1 购物网站交易类型71.3.2 购物网站运作7第1章 易买网需求分析92.1 整体需求模型92.2 前台功能模块102.3 后台功能模块15第 3 章 概要设计203.1 定义规范203.1.1 开发工具规范203.1.2 命名规范以及编码规范203.2 设计数据库表定义包设计接口203.2.1 分析设计数据库表203.2.2 定义包233.2.3 设计接口和购物车23第 4 章 详细设计及实现274.1 易买购物网系统实现过程

3、274.1.1 系统各部分实现方法274.1.2 创建与数据库的连接274.1.3 易买购物网编码流程314.2 易买购物网各功能模块的实现314.2.1 前台功能模块314.2.2 后台功能模块36第 5 章 系统测试445.1 系统测试原理、原则及方法445.1.1 系统测试原理445.1.2 系统测试原则及方法455.2 本系统的统测试46致 谢49参考文献503摘 要伴随着Internet的蓬勃发展,网络购物中心作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已经不再满足用途信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利。网络购物正适

4、应了当今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的商品。本系统便是尝试用MVC(模型(Model),视图(View)和控制(Controller)开发模式在网络上架构一个动态的电子商务网站,它是在Windows XP/Win 7下,以Oracle10g为数据库开发平台,Tomcat网络信息服务作为应用服务器,采用JSP(JavaServer Pages)视图层技术、自定义MVC框架(控制层技术)和Service(业务逻辑)+DAO(控制层)开发的网上购物系统。MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或E

5、JB来实现。 View层用于与用户的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。本系统分前台部分和后台部分,前台部分由用户使用,主要包括用户注册,购物车管理,阅读新闻,留言板管理等功能;后台部分由管理员使用,主要包括商品管理,商品分类管理,处理订单,用户信息管理,新闻发布,留言管理等功能。建立后的网站系统是一个动态、交互式、具有商品提供、系统管理、用户留言等功能的电子商务网站。关键词: 软件开发 购物网站 数据库 JSP 自定义框架 MVC开发

6、模式AbstractAlong with the vigorous development of the Internet, e-commerce networks as a shopping center is a form of its highly efficient, low-cost advantages, gradually emerging as a business model and philosophy, there is no longer meet use and dissemination of information browsing, but a desire t

7、o bring the full enjoyment network more convenient. Internet shopping is being adapted to the fast pace of todays society to live, so that customers can enjoy the convenience of fast and easy way to purchase their own like commodities. The system is trying to use the MVC (Model (Model), view (View)

8、and control (Controller) on the network structure is a dynamic e-commerce website development model, which is in the Windows XP / Win 7 to Oracle10g databasedevelopment platform, Tomcat, network information service as the application server, JSP (JavaServer Pages) view layer technology, custom MVC f

9、ramework (the control layer technology) and service (business logic) + DAO (control layer) the development of online shopping system. The purpose of the MVC pattern is to achieve the division of functions of the Web system. Model layer implements the business logic in the system, you can usuallyJava

10、Bean or EJB. View layer for interaction with the user, usually with JSP.The Controllerlayer is a bridge of communication between the Model and View, it can assign the usersrequest and select the appropriate view for display, but it also can explain to the usersinput and maps them for the model layer

11、 performs the operation. Prospects and the background of some of his hours, the prospects of users, including users registered, a shopping cart management, order management, personal information management, message board management functions; Background in part by managers, including commodity manag

12、ement, processing orders, customer information management, information management, and other functions links. After the establishment of the website is a dynamic, interactive, with commodities, systems management, voice mail, and other functions of the e-commerce website users. Keywords: SoftWare De

13、velopment Shopping site DataBase JSP Custom frame MVC Development model绪 论近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。网上购物系统作为B2B,B2C(Business to Customer,即企业对消费者),C2C(Customer to Customer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。本文主要考虑的是如何建设B2C

14、的网上购物系统。1.1 课题研究背景、意义及特点1.1.1 课题研究背景随着计算机和网络的日趋普及,越来越多的商家在网上升起商店,向消费者展示出一片新鲜的购物大地。在美、日等信息化程度较高的国家和地区,网络商店发展速度迅猛,美国的世界级超一流的零售商,如沃尔玛凯玛特、家庭仓储、科罗格、J.C培尼等纷纷跻身于网络经商的行列。调查表明:美国的家庭已越来越习惯于在家中从网上购物。1.1.2 课题意义从系统的背景来看,可以看出开发一个网上购物系统的意义是:投资少,回收快。一项针对中国中小企业的情况调查显示,个人在网下启动销售公司的平均费用至少5万元,而网上开店建店成本非常小。一般说,筹办一家网上的商店

15、投入很小,不用去办营业执照,不用去租门面,不用囤积货品,所需资金不过1500元左右;网上商店比同等规模的地面商店“租金”要低得多,同时租金不会因为营业面积的增加而增加,投资者也不用为延长营业时间而增加额外的费用。不受地理位置影响。不管客户离店有多远,在网上,客户一样可以很方便地找到并购买商品。这令消费群体突破了地域的限制,变得无限广阔了。1.1.3 课题特点购物网站就是提供网络购物的站点,足不出户即可购买到你所喜欢的商品。目前国内比较知名的专业购物网站有卓越、当当等,提供个人对个人的买卖平台有淘宝、易趣、拍拍等,另外还有许多提供其它各种各样商品出售的网站。购物网站就是为买卖双方交易提供的互联网

16、平台,卖家可以在网站上登出其想出售商品的信息,买家可以从中选择并购买自己需要的物品。1.2 论文的组织首先在第二章是易买购物网的需求分析;然后在第三章是易买购物网的概要设计;其次第四章是易买购物网的详细设计;最后第五章是系统的测试。1.3 相关知识综述1.3.1 购物网站交易类型从交易双方类型分为四种形式:第一种是B2C,即商家对顾客的形式 ,(如校导商城)第二种是C2C,即顾客对顾客的形式(如淘宝、易趣、拍拍、有啊)。但是淘宝现在在某些领域也开始涉足B2C了,例如淘宝商城就是C2C里的B2C以及百度推出的有啊。第三种是B2B,用于企业之间的购物交易,(如阿里巴巴、慧聪网等)第四种是B2F,是

17、电子商务按交易对象分类中的一种,即表示商业机构对家庭消费的营销商务、引导消费的行为。这种形式的营销模式一般以品牌推荐+目录+导购+店面+网络销售+送货+售后为主,主要借助于DM和Internet开展销售活动。 它相对于C2C、B2C模式是一种升级模式。他们属于一种导购或销售模式,针对的顾客群体不同细分各个领域.。目前没有真正意义的B2F。1.3.2 购物网站运作阶段(1)卖方将欲卖的货品登记在社群服务器上。阶段(2)买方透过入口网页服务器得到货品资料。阶段(3)买方透过检查卖方的信用度后,选择欲购买的货品。阶段(4)透过管理交易的平台,完成资料记录。阶段(5)-付款认证。阶段(6)-付款给卖方

18、。阶段(7)透过网站的物流运送机制,将货品送到买方手中。第1章 易买网需求分析本需求分析完整规范并定义易买购物网系统的所有功能需求。本需求规约将详细说明易买购物网项目功能定义和外部行为特征,采用用例的形式描述相关业务流程和约束条件,同时包括部分非功能性需求和设计约束。本规约文档适用于易买购物网项目的研发。2.1 整体需求模型总体需求模型:图 2-1-1 总体需求模型图易买购物网共分二大系统功能区: 前台功能系统:提供客户访问和使用本网站服务的功能内含以下八个功能模块: 新闻动态 留言簿 购物车 分类商品信息展示 商品详细页面 用户登录 用户注册 首页管理 后台功能系统:提供网站管理者维护和定义

19、网站服务的功能内含以下五个功能模块: 用户信息管理 订单管理 新闻管理 留言簿管理 商品信息管理2.2 前台功能模块前台功能模块包括以下主要业务需求:图 2-1-2 前台需求模型图1首页页面客户进入易买购物网之后的第一个页面,主要的功能的入口也在该页面提供给客户。图 2-1-3 用户所有操作示意图客户可以在首页进行的操作有:l 根据分类进行商品查询l 察看近期新闻l 浏览首页推荐商品l 察看最近公告的特价信息l 查看之前浏览过的商品(如果未登录则显示最新商品)l 注册自己的账户l 登录已注册的账户l 在账户登录状态下查看已购买但未结帐的商品l 使用留言簿对网站提出建议和意见2.用户注册客户选择

20、注册进入用户注册页面图 2-1-4 用户注册示意图客户可以在注册页面进行的操作有:l 按要求填写客户信息l 提交注册信息3.用户登录客户验证身份进入登录状态后可以使用购物车等专用功能,如果身份验证为管理员则进入后台功能模块图 2-1-5 用户注册示意图客户可以在登录页面进行的操作有:l 填写身份信息l 登录等待服务器验证,如果是管理员身份进入后台功能页面,如果是普通用户显示登录成功并维持登录状态4.留言簿客户可以使用留言簿对网站的服务提出意见图 2-1-6 用户留言示意图客户可以在留言页面进行的操作有:l 浏览所有留言信息l 发表留言5.分类商品信息展示客户选择商品类别浏览属于该类别的所有商品

21、,并在其中进行挑选中意的商品图 2-1-7 用户浏览商品示意图客户可以在商品信息展示页面进行的操作有:l 查看商品详细信息6.商品详情页面客户根据简要信息选择商品后,进一步浏览商品的具体信息,比如价格图 2-1-8 用户浏览商品详细情况客户可以在商品详情页面进行的操作有:l 将商品放入购物车7.购物车客户登录后可以随时查看和维护自己未结算的商品,或结算订单图 2-1-9 用户操作购物车示意图客户可以在购物车页面中进行的操作有:l 当前未结算的商品l 修改订购但未结算的商品l 结算订单8.新闻动态客户可以浏览新闻的具体详情图 2-1-10 用户阅读新闻客户可以在新闻动态页面中进行的操作有:l 阅

22、读新闻2.3 后台功能模块后台功能模块包括以下主要业务需求:图 2-1-11 后台需求模型图1.用户管理管理员对当前的会员用户的帐户进行管理图 2-1-12 管理员管理用户示意图管理员在用户管理页面可以进行的操作有:l 察看所有注册的用户l 对注册的用户信息进行修改l 对注册的用户信息进行删除l 添加新的用户信息2.商品信息管理管理员对网站出售的商品进行维护图 2-1-13 管理员管理商品信息示意图管理员在商品信息管理页面可以进行的操作有:l 添加新的商品类别l 维护现有商品类别l 添加新的商品信息l 维护现有商品信息3.订单管理管理员通过订单管理来查看来处理客户的订单图 2-1-14 管理员

23、管理订单信息示意图管理员在订单管理页面可以进行的操作有:l 查询订单l 浏览订单l 修改订单l 删除订单l 处理订单4.留言簿管理管理员对客户留言进行回复和维护图 2-1-15 管理员管理留言信息示意图管理员在留言簿管理页面可以进行的操作有:l 浏览客户留言l 回复客户留言l 删除客户留言5.新闻管理管理员使用新闻管理来发布维护站内新闻图 2-1-16 管理员管理新闻信息示意图管理员可以在新闻管理页面进行的操作有:l 查看现在发布的新闻l 发布新的新闻l 修改已存在的新闻l 删除过时的新闻 第 3 章 概要设计3.1 定义规范3.1.1 开发工具规范选择的开发工具有:1.编码工具MyEclip

24、se6.0.12.数据库Oracle 10g3.数据库表设计工具PowerDesigner4.服务器Tomcat 5.x5. JDK版本1.63.1.2 命名规范以及编码规范1.包的命名:工程名+功能 比如:easybuy.dao,包的命名统一用小写2.接口和类的命名:遵循JAVA语言命名规范比如:UserDAO.java3.变量和方法的命名:遵循JAVA语言变量命名规范,并且写适当的注释4.编码规范:统一遵循JAVA语言编码规范,并且写适当的注释3.2 设计数据库表定义包设计接口3.2.1 分析设计数据库表根据需求,易买购物网至少需要6张表。数据库表关系如图3-2-1所示:图 3-2-1 数

25、据库表关系图1.用户表(e_user):存储用户信息字段名称数据类型长度是否允许空是否为主键或外键字段描述IDNUMBER自动否是主键USERNAMEVARCHAR240否否用户名PASSWORDCHAR32否否密码UNAMEVARCHAR220否否姓名SEXVARCHAR28否否性别REGTIMEDATE自动否否注册时间EMAILVARCHAR240否否邮箱ADDRESSVARCHAR2200否否送货地址PHONEVARCHAR212否否电话ISANUMBER1否否用户级别2.商品表(e_product):存储商品信息字段名称数据类型长度是否允许空是否为主键或外键字段描述PIDNUMBER自

26、动否是主键TIDNUMBER自动是外键关联类型表OCODENUMBER8是外键关联订单表PNAMEVARCHAR2200否否商品名PTYPEVARCHAR2100否否商品类型PPRICENUMBER12否否商品价格PSTORAGENUMBER自动否否商品库存PVARIETYVARCHAR240否否品牌PNUMBERNUMBER自动否否商品条码PDETAILVARCHAR2400否否商品详情PPICTUREVARCHAR2200是否商品图片3.商品类型表(e_type):存储商品类别信息字段名称数据类型长度是否允许空是否为主键或外键字段描述TIDNUMBER自动否是主键E_T_TIDNUMBER

27、自动是外键关联自身TTYPEVARCHAR2100否否类型名4.订单表(e_order):存储订单信息字段名称数据类型长度是否允许空是否为主键或外键字段描述OCODENUMBER8否是主键IDNUMBER自动是外键关联用户表OPOSTTIMEDATE自动否否订单时间OSTATEVARCHAR220否否订单状态ONUMBERNUMBER自动否否商品数量ALLPRICENUMBER18否否总价格5.留言表(e_guestbook):存储留言信息字段名称数据类型长度是否允许空是否为主键或外键字段描述GIDNUMBER自动否是主键GNAMEVARCHAR240否否昵称GTITLEVARCHAR280否

28、否留言标题GCONTENTVARCHAR2200否否留言内容GPOSTTIMEDATE自动否否留言时间GSTATEVARCHAR28是否是否回复GRESTOREVARCHAR2200是否回复内容6.新闻表(e_news):存储新闻信息字段名称数据类型长度是否允许空是否为主键字段描述NIDNUMBER自动否是主键NTITLEVARCHAR2100否否新闻标题NCONTENTVARCHAR2400否否新闻内容NPOSTTIMEDATE自动否否发布时间3.2.2 定义包1.easybuy.dao存放DAO层各模块的接口2.easybuy.dao,impl存放DAO层实现类3.easybuy.dao.

29、entity存放实体类4.easybuy.dao.filter存放过滤器5.easybuy.action存放各模块的Action,这里所有模块的Action都应该继承DisapatchAction6.easybuy.form存放各模块的Form,这里所有模块的Form都应该继承ActionForm7.easybuy.service 存放业务逻辑层各模块的接口8.easybuy.service.impl存放业务逻辑层接口的实现类9.easybuy.tag存放标签类,这里的类都应该继承BodyTagSupport类10.easybuy.utils存放所有工具类3.2.3 设计接口和购物车1、用户模

30、块UserDAO 中包含的方法:(1)public User login(User user);用户登录(2)public boolean register(User user)用户注册(3)public boolean updateUser(User user);修改用户信息(4)public boolean delUser(long id);删除用户(5)public List getUserList();获得用户列表(6)public User getUserById(long id);获得一个用户(7)public int getCountUser();获得所有用户的数量(8)publ

31、ic List getUserList(int startRow,int endRow);带分页,获得用户列表2.商品模块ProductDAO 中包含的方法:(1)public boolean addProduct(Product product); 添加一件商品(2)public boolean delProduct(long pid); 删除一件商品(3)public Product getProductById(long pid); 跟据商品id查找一件商品(4)public boolean updateProduct(Product product); 修改商品信息(5)public

32、List showProduct(long pid); 获得商品列表(6)public int getProductCount(); 获得总记录条数(7)public Product showProduct(lond pid); 显示单个商品(8)public boolean updateStorage(long count,long pid); 更新商品库存(9)public List getProductList(int startRow,endRow); 带分页,获得商品列表(10)public List getProductList(long tid); 获得根据类型商品列表3.商品类

33、型模块TypeDAO 中包含的方法:(1)public boolean addType(Type type); 增加一个商品类型(2)public boolean delType(long tid); 删除一个商品类型(3)public Type getTypeById(long tid); 获得一个商品类型 (4)public boolean updateType(Type type); 修改商品类型(5)public List getTypeList(); 获得所有商品类型(6)public List getPTypeList(); 获得所有父类型(7)public List getTyp

34、eList(List list); 获得父类型下所有子类型4.订单模块OrderDAO 中包含的方法:(1)public boolean addOrder(Order order); 生成订单(2)public boolean delOrder(long ocode); 删除订单(3)public boolean updateOrder(Order order); 修改订单信息(4)public Order getOrderById(long ocode); 根据订单编号获得订单信息(5)public List getOrderList(); 获得订单列表(6)public int getCo

35、untOrder(); 获得订单总数(7)public Order getOrderById(long ocode,String name); 根据订单号和姓名查询订单(8)public List getOrderList(int startRow,int endRow); 带分页,获得订单列表5.留言模块GuestBookDAO 中包含的方法:(1)public boolean addGuestBook(GuestBook guestbook); 添加留言(2)public boolean delGuestBook(long id); 删除留言(3)public GuestBook getG

36、uestBookById(long id); 获得单条留言(4)public List getGuestBook(); 获得留言信息列表(5)public int getGuestBookCount(); 获得留言总条数(6)public boolean updateGuestBookRestore(GuestBook guestbook); 管理员回复留言(7)public List getGuestBookList(int startRow,int endRow);带分页,获得留言信息列表6.新闻模块NewsDAO 中包含的方法:(1)public boolean addNews(News

37、 news); 添加新闻(2)public boolean delNews(long id); 删除新闻(3)public boolean updateNews(News news); 修改新闻(4)public News getNewsById(long id); 获得单条新闻(5)public List getShowNewsList(long n); 显示n条新闻(6)public int getNewsCount(); 获得新闻总条数(7)public List getNewsList(int srartRow,int endRow); 带分页,获得新闻列表7.购物车的设计购物车的实现

38、有两种方式:(1) 有购物车表这种方式下购物车信息存储的时机是:用户退出的时候,执行批量insert into语句。需要用到HttpSessionListener这个监听器。(2) 没购物车表这种方式下购物车存储的位置是:HttpSession或cookie中。存储的结构用到JavaBean。本系统选择没有购物车表的实现方式实现。将购物车存储在HttpSession中。但是这种方式在IE8.0中有漏洞,原因是在IE8.0的浏览器中session共享一片内存空间,会导致session互串。所以这里在用户登录时要判断session是否为空,如果不为空,则先让session失效,如果为空,则创建一个

39、session。这样就解决了session互串的问题。每个用户登录后都有拥有各自的购物车,购物车中的商品也不会产生混乱。这样用户就能正常地结算产生订单,更新商品库存。关键代码如下:/会检测session是否为空,如果session为空,则返回nullHttpSession session = request.getSession(false);/调用业务逻辑,获得返回值User us = service.login(user);if(session = null)session = request.getSession();session.setAttribute(login, us); el

40、se session.invalidate();session = request.getSession();session.setAttribute(login, us);第 4 章 详细设计及实现4.1 易买购物网系统实现过程 4.1.1 系统各部分实现方法本系统所采用的是Internet架构,三层B/S模式,采用JSP+自定义框架+业务逻辑+DAO层+Oracle10g数据库技术实现,同时利用了JavaBean、JavaScript、JDBC连接数据库等技术。本节将介绍系统各部分的实现方法。从系统功能模块划分中可以看出,系统功能模块分为前台和后台。前台包括有用户注册、用户登录、用户留言、

41、浏览商品、购买商品、加入购物车、结算等功能。后台模块总要有添加商品、删除商品、添加商品类别、管理用户、管理新闻、管理订单,管理留言等。4.1.2 创建与数据库的连接本系统的数据库连接采用了JDBC(Java DataBase Connectivity)的方式。JDBC是Java数据库连接API。简单地说,JDBC能完成三件事:l 与数据库建立连接l 向数据库发送SQL语句l 处理数据库返回的结果本系统对数据库的操作是由DAO层完成的。由于数据库连接的很多代码都是重复的,因此这里设计了一个数据库工具类DBUtils.java,代码如下:package easybuy.utils;import j

42、ava.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DBUtils static try /加载驱动Class.forName(oracle.jdbc.OracleDriver); catch (ClassNotFoundException e) e.printStackTrace();public static Connection getConn() Connection conn = null;try /jdbc:oracle:thin:localhost:1521:实例名, 用户名,密码conn = DriverManager.getConnection(jdbc:oracle:thin:localhost:1521:ORCL, us_xz,us_xz); catch (SQLException e) e.printStackTrace();return conn; public static

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1