




已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网上购物系统的设计与实现 摘要 本网上购物系统是一个基于 internet,采用 b2c(business to consumers) 1模式,并根据现有的网上购物系统的现状而设计开发的电子商务平台。它不 但可以扩大商家的规模和市场影响力,而且可以减少企业的经营成本,提高工 作效率。 本文首先介绍了网上购物系统的现状及开发背景,然后论述了系统的设计 目标,系统需求和总体设计方案,较详细的论述了系统的详细设计和实现。最 后,本文对网上购物系统进行了系统检测并提出了还需要改进的问题。 本系统主要为用户提供了会员注册,购物车管理,用户资料,商品搜索修 改等功能,为管理员提供了商品管理,用户信息管理,新闻信息管理,广告链 接管理等功能。在设计方面,本系统采用b/s 三层结构,同时使用jsp 技术进 行动态页面的设计,从系统的安全性和代码的可重用性方面考虑,运用 javabean 对程序的关键代码进行封装。后台数据库选用access 数据库。 关关键键词词:b/s 结构/javabean/jsp/access abstract the shop online system is a electronic commercial platform which has been designed according to the situation of shop online system based on internet with b2c mode. it can not only enhance the scale of shopping centre and market influence, and can also reduce the enterprises running cost, improve work efficiency. the thesis has firstly introduced the practical situation and the developing background of the system. and then has described the designing goal、system need and the whole designing plan, has described the detailed design and reality of the system in detail. finally, conclusion has been drawn about the system and problem has also been raised. the system has mainly provided users with the following functions: membership registration、shopping car management、goods search、information modify etc. it has also provided managers with goods management、customer information management、news management 、ad management and so on. it has been designed with b/s mode of three-tier structure, jsp technology in dynamic page design. considering from the security and reusing code of the system, key codes has been secured by javabean technology. access database has been used as the background database. key words: b/s, structure,javabean, jsp ,access 目录目录 第一章:绪论第一章:绪论6 6 1.1 系统开发背景 6 1.2 系统实现的目标 6 1.3 系统的开发意义 7 第二章第二章 网上购物系统网上购物系统7 7 2.1 网上购物系统分析 7 2.2 网站的设计目标 8 2.3 网站的可行性分析 8 2.4 网站的深入调查 9 2.5 网站设计的特点 9 2.6 网站开发的设计思想 9 2.7 系统设计的总体规则 .10 第三章:第三章:系统分析与设计系统分析与设计1010 3.1 网站的功能分析 .10 3.2 平台功能模块的设计分析 .11 3.3 系统流程分析 .12 3.3.1 前台购物流程12 3.3.2 注册功能流程12 3.3.3 商品搜索流程13 3.3.4 用户登录流程 13 3.3.5 商品管理流程14 3.3.6 购物车流程15 3.4 相关数据库表设计 .15 3.4.1 商品信息表.15 3.4.2 会员信息表 member16 3.4.3 购物车表 basket.16 3.4.4 管理员表 admin.16 第四章第四章 系统实现系统实现1717 4.1 目录结构说明 .17 4.2 功能页面结构 .17 4.3 主要功能流程 .18 4.4 各功能模块的实现 .18 4.4.1 数据库的连接18 4.4.2 用户登陆模块的实现19 4.4.3 购物车模块的实现.22 4.4.4 商品信息的实现25 4.4.5 后台管理模块的实现26 4.4.6 商品搜索模块的实现.29 4.5 系统的整体设计和规划中的问题 .29 4.6 开发功能模块所遇到的难点 .29 4.7 系统中存在的问题及拟定的解决方法 .30 总结与展望总结与展望3232 参考文献参考文献3232 第一章:绪论第一章:绪论 1.1 系统开发背景系统开发背景 近年来,随着internet的迅速崛起5,互联网已日益成为收集提供信息的 最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多 的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。 网上购物系统3 从交易双方类型分为两种形式,一种是b2c,即商家 对顾客的形式(如一流的综合性品质网购商城 如经营图书音像的 当当、 越购商城等;另一种是 c2c,即顾客对顾客的形式(如 百度有啊、淘宝网 ) 。 第三种叫 b2b(商家对商家,企业对企业 ,知名平台是阿里巴巴)。第四 种是 c2b,是个人以劳务方式向企业提供产品,一般是智慧产品如策划、创 意等,网上也称为威客。此外还有g2g、g2b、g2c、b2g、c2g 等,表示政 府对政府、政府对企业、政府对个人、企业对政府和个人对政府等,但都没 有前述的 c2c 和 b2c 发展的快和完善。 本文主要考虑的是如何建设 b2c 的网 上购物系统。 网上购物是一种具有交互功能的商业信息系统。它向用户提供静态和动态 两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、 管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议 安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便 的传递信息,完成电子贸易或edi交易。这种全新的交易方式实现了公司间文档 与资金的无纸化交换。 1.21.2 系统实现的目标系统实现的目标 现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重 每一个细小的环节。这样才能使得在电子交易时避免不必要错误发生。我们将 使用 html、jsp 等技术来编辑网页,并运用 jdbc 技术把数据库和动态网页相关 联。传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管 理系统的数据库中,这种方法在数据量不大时有很多的应用场合。当数据量比较 大,并且有较强的专业性时,录入的费用和出错的可能性都相应上升。本设计在 实际应用中的解决方案是建立网站, 以及自己的数据库,使得所需商品信息可 以及时的保存、更新,可以更好的及时了解商品买卖的情况 1.31.3 系统的开发意义系统的开发意义 internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性 的方案:利用internet的技术和协议,建立各种企业内部网intranet,企业外 部网extranet,通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结 合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大 了交易范围。而在实际的生活中,这种方案已经被广泛的运用到了实际的商业 活动中了,人们将这种交易模式称为:电子商务。 当今比较流行的网上购物系统有“淘宝()” , “当当 ()” 。它们都是相当优秀的电子商务网站,对其他的网站提供 了良好的典范。设计中可以学习参考他们的思想,了解和熟悉整个网站的开发 流程及完整的电子商务网站应有的功能和注意事项。 设计和完成一个电子商务网站的,将会牵涉到许多技术上的问题,如:动 态网页制作技术的,后台数据库的设计和管理,通过实际的制作个网站,可以 避免纸上谈兵,在实践中掌握上述技术的使用。 第二章第二章 网上购物系统网上购物系统 2.12.1 网上购物系统分析网上购物系统分析 系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更 完善地被设计出来,就必须先进行调查研究。在系统调查的基础上,对新系统 的功能进行细致的分析,从而才能够开发出完整的系统设计。 2 2. .2 2 网网站站的的设设计计目目标标 本购物系统由于需要演示程序,故为了演示方便,采用 jsp4+access 数据 库的架构实现的,此系统分为前台管理和后台管理。前台管理是友好的操作界 面,供用户浏览、查询使用。包括:浏览商品、查询商品、订购商品、购物车、 用户维护等功能;后台管理是提供给管理员的,其中包括:商品管理、用户管 理、网站信息管理、和广告友情链接等。使管理员从繁琐的手工操作中解脱出 来,并提高了办公效率。 2 2. .3 3 网网站站的的可可行行性性分分析析 随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来 越丰富,电子商务已经成为网上的一股潮流。我们相信要不了太长有时间,顾 客就可以在网络世界上获得他们在现实世界上可以获得的所有商品和服务。 可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究 的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执 行性的分析是非常必要的,也是很重要的,经过最初的设计目标和进行的市场 调查得出以下四点的可行性分析: (1)经济可行性:该平台设计只是作为本人的毕业设计,又因为本人的设 计能力有限,其功能还不能完善,所以没有什么经济效 益可谈。 (2)技术可行性:jspservlet 的技术已经较为成熟。 (3)运行可行性:该系统需要搭建 jvm 即 java 虚拟机和 tomcat 环境,在 此环境下系统,并且在正确连接数据库后可以正常运行。 (4)法律可行性:该平台是作为毕业设计与商业无关,又因为是自主开发 设计,因此不会构成侵权,在法律上是可行的。 通过以上的可行性分析,我将采用 jspservlet 相结合的技术5,运用 access 数据库对网站进行建设。 2 2. .4 4 网网站站的的深深入入调调查查 经过以上的初步调查和研究,并且确定了该平台的可行性,并决定开发本 平台,为了能够对现行的平台内容进行充分了解,使所要开发的平台更具有实 用性和适应性,通过两个月的实习调查和指导老师的耐心介绍,设计出该平台 功能如下: 1. 能够完成用户基本信息录入的注册和用户基本信息的个人前台与后台管 理。 2. 能够完成管理员对网站的商品资料(商品添加、商品审查)会员管理 (会员审查) 、网站信息管理(新闻添加、修改删除、公告设置) ,以及 常规设置(广告添加,友情链接)的功能。 3. 能过电子商品的名称,电子商品的分类进行搜索。 4. 能够通过查看购物车对所选商品进行确定、挑选,通过定单查询对支付 费用进行确定。 经过前一阶段的调查与研究分析,我已确定了该平台设计的主要功能,对 每个功能模块也作了具体描述,下面就来具体分析该平台的设计特点与具体思 想。 2 2. .5 5 网网站站设设计计的的特特点点 我所设计和开发的网上购物平台是经过很长时间的调查和分析才开始具体 实施的,它的主要特点是改变了以往的购物只能过现实的商场才能达到的结果, 采用 web 技术,借助于 internet 互联网广泛应用技术,达到资源共享,提高以 往购物的局限性,缩短人们的时间和提高工作效率,具有较好的交互性,从而 实现信息化,规范化,系统化,网络化的平台,使整个购物活动过程简单、方 便、易行。 2 2. .6 6 网网站站开开发发的的设设计计思思想想 网上购物平台主要是对后台管理和前台操作。后台管理是管理员对本网站 的维护,通过商品资料(商品添加、商品修改)会员管理(会员审查)网站信 息管理(新闻添加、修改删除、公告设置) ,以及常规设置(广告添加,友情链 接)等功能达到对网站的管理。前台操作是用户登录到本网站,可以进行用户 注册,通过网站的精品推荐或商品搜索功能,找到自己想要买的商品,装入购 物车,提交定单进行购买。 网上购物平台的特点是客户和电子商品信息量很大,管理员需要整理的信 息很多,为让管理员轻松、方便、快捷的管理,该平台采用符合购买电子商品 基本的原则,满足广大客户的日益增长的数量,并达到操作过程中的直观、方 便、实用、安全等要求。 2 2. .7 7 系系统统设设计计的的总总体体规规则则 无论哪个网站都要有它自己的设计规则。该平台也一样,它的主要设计规 则有: 简单性:在实现平台的功能的同时,尽量让平台操作简单易懂,这对于一 个网站来说是非常重要的。 针对性:该平台设计是网上购物系统及后台管理的定向开发设计,所以具 有专业突出和很强的针对性。 实用性:该平台能完成电子商品展示和管理员管理的基本信息,具有良好 的实用性。 第三章:第三章:系统分析与设计系统分析与设计 3 3. .1 1 网网站站的的功功能能分分析析 经过前期的深入调查和研究,总结出该平台需要完成的一些具体功能,分 析如下: 用户管理 能够完成用户基本信息录入的注册和用户基本信息的修改。 管理员管理 能够完成管理员对网站的商品信息管理(商品添加、商品 审查) 、会员管理(会员审查) 、网站信息管理(新闻添加、 修改删除、公告设置) ,以及常规设置(广告添加,友情链 接)的功能。 搜索功能 能过电子商品的名称进行搜索。 查询功能 能够通过查看购物车对所选商品进行确定、挑选。 3 3. .2 2 平平台台功功能能模模块块的的设设计计分分析析 在平台功能的分析基础上,得到本平台的功能模块图如图 3-1 所示: 网上购物平台 index.jsp 。 商 品 修 改 用户管理管理进入 新 闻 管 理 用 户 注 册 商 品 管 理 商 品 添 加 会 员 管 理 广 告 链 接 修 改 新 闻 新 闻 添 加 广 告 设 置 链 接 管 理 商 品 名 称 用 户 修 改 会 员 删 除 商品搜索网站布局 图 3-1 平台购物模块图 用户进入网上购物平台,用户可以注册,然后登录后可以进行修改资料,用 户可以通过商品搜索,找到自己想要产品。管理员可以通过后台登录进去进 行会员管理,商品管理,新闻管理和广告链接管理。在会员管理中,可以对 会员就行添加删除,在商品管理中可以对商品进行添加修改,在广告链接里 面可以对广告设置和友情链接进行管理。 3 3. .3 3 系系统统流流程程分分析析 3 3. .3 3. .1 1 前前台台购购物物流流程程 浏 览 商 品 选 择 商 品 订 购 商 品 去 购 物 车 去 收 银 台 提 交 订 单 未注册用户 已登录注册用户 未登录注册用户 注册 登录 图 3-2 前台购物流程图2 用户再前台可以浏览商品,看到自己喜欢的商品可以选择商品,然后订购商 品,这时需要进行判断,如果是没有注册的用户,那么系统跳到注册页面,如 果是注册了没有登录的用户,则跳转到登录页面,已经登录的用户则跳转到购 物车页面,然后去收银台结帐,然后提交订单。 3 3. .3 3. .2 2 注注册册功功能能流流程程 如图 3-3 所示: 图 3-3 注册功能流程图 注册的具体实现为: 点击主页面的用户注册选项后,会弹出一个注册信息页面,用户需要如实 填写用户名,密码,e_mail,地址,电话,真实,姓名等各项信息,提交后,系 统进行检测判断该用户名是否已经注册过,如果已经存在则弹出新页面,提示 用户该用户名已经注册过,如果没有则进行下一步判断,用户输入的两次密码 是否一致,然后依次往后判断用户所填写的各项信息是否符合要求,直到所有 信息均正确无误,系统将该用户注册信息写入会员表即 member 并提示用户注 册成功,用户登陆后,就可以进行有效的购物了。 3 3. .3 3. .3 3 商商品品搜搜索索流流程程 如图 3-4 所示: 注册入口 必选项为空 用户名有效? 2 次输入密码是 否一致? 密码长度符合要 求? emai 地址有效 效? 其他信息有效 注册成功 图 3-4 商品搜索流程图 商品的搜索功能使用户更加方便的进行自己所需要的商品的查询,节省时 间,提高效率。用户搜索时只要输入商品的关键字就能搜索到所有相关的商品。 并且能列出通过搜索得到的商品的详细信息。 3 3. .3 3. .4 4 用用户户登登录录流流程程 图 3-5 用户登陆流程图 用户登录,首先要有一个提供用户登录的表单。用户登录的表单应该嵌入 开始搜索 输入条件 搜索结果 查看商品购物车 下订单 续搜索 是 否 登录入口 取得用户名和密码 将 userid 存入 session 中 查询用户是否存在 核对密码是否正确 登录成功 是 是 否 否 整体的结构当中。在实际的应用中,可以这样设计,如果用户没有登录,则在 页面中显示用户登录的选项,用户登录后,则可隐藏用户登录的选项而代之以 用户的基本信息。 首先,用户要有一个用户名和密码。商务网站需要很高的稳定性和安全性,因 此对用户名不允许使用恶意的代码作为用户名。同时对密码也要求保密,将密 码加密后再存入数据库。另外,一个电子商务网站。用户的真实姓名是必不可 少的。除此之外还需要用户的性别、e-mail、电话号码等。 3 3. .3 3. .5 5 商商品品管管理理流流程程 图 3-6 商品管理流程图 在该功能里管理员可以进行不需要的商品的删除,在这里管理员当然也可 以浏览到商品的详细信息。并且比普通用户在浏览商品界面里所看到的商品信 息多一个该商品在数据库中的 id。 3 3. .3 3. .6 6 购购物物车车流流程程 购物车具体的实现可采用这种形式:定义一个购物车的类(class)。 1.列出商品的列表,使用户能够自由选择所需要的商品。 2.当用户在点击“添加到购物车”的链接时,执行如下功能: 检查用户购物车类是否存在。如不存在,则建立,并注册这 session 变量; 在有用户购物车类存在的情况下,检查该类中是否有该商品。如存在,则商品 数量相应加 1;如没有该商品,则将该商品添加到该类中。 商品管理 查询商品 修改删除 满意否 返回 添加商品 是 图 37 购物车流程图 3.43.4 相关数据库表设计相关数据库表设计 .1 商品信息表商品信息表 字段字段名类型宽度小数位索引可否为空 sh_id 商品编号自动编号是否 sh _name 商品名称文本型 50 否 sh _cash 商品价格数值型 182 sh _content 商品信息备注型 255 sh _pic 商品图片文本型 255 sh _buys 商品数量数值型 18 sh _date 商品日期日期型 .2 会员信息表会员信息表 membermember 字段字段名类型宽度小数位索引可否为空 user_id 会员编号自动编号是 user_name 会员帐号文本型 50 否 user_pass 会员密码文本型 50 否 user_adds 会员地址文本型 255 user_mail 会员 e_mail文本型 50 user_tel 会员电话文本型 50 购物车 查看商品 满意吗 下订单 调整商品 是 否 user_regtime 注册时间日期型 user_postcode 邮政编码文本型 50 user_namec 会员姓名文本型 50 .3 购物车表购物车表 basketbasket 字段字段名类型宽度小数位索引可否为空 basket_id 购物车编号自动编号是否 sh_id 商品编号自动编号是否 user_name 会员帐号文本型 50 否 basket_count 商品数量数值型 18 basket_date 购物时间日期型 basket_check 是否结帐是/否 sh_name 商品名称文本型 50 sh_cash 商品价格数值型 182 sub_number 订单编号文本型 50 是 .4 管理员表管理员表 adminadmin 字段字段名类型宽度小数位索引可否为空 admin_id 管理员编号自动编号是 admin_name 管理员帐号文本型 50 admin_pass 管理员密码文本型 50 第第四四章章 系系统统实实现现 4 4. .1 1 目目录录结结构构说说明明 (1) admin 用于存储系统管理员的后台操作脚本,包括商品类别管理、商品信 息管理、站内公告管理、订单管理、系统用户管理等功能; (2) pic 用来存储商品的图片资料,管理员上传的商品图片也存在这里。 (3) img 用来存储网页上的图片文件。 (4) database 用来存储系统的数据库。 (5) class 用来存储封装起来的一些 servelet,也可称为 javabean 文件。 4 4. .2 2 功功能能页页面面结结构构 (1)前台功能页面 主页面框架: index.jsp,top.jsp,in- search.jsp,includenotice.jsp,paihang.jsp,middle.jsp 商品展示:bought.jsp,cash.jsp,showing.jsp,views.jsp,inproduct.jsp 登陆注册:dengluyufou.jsp reg.jsp,regsave.jsp,quit.jsp (2)后台管理页面 主页面框架:index.jsp,manage.jsp,left.jsp,main.html,quit.jsp 商品管理:addhw.jsp,changehw.jsp,changehw_ok.jsp,savehw.jsp,delhw.jsp 用户管理:viewuser.jsp 新闻管理:addnews.jsp,editnews.jsp,delnews.jsp 公告管理:gg.jsp,gg2.jsp,ggdel.jsp 广告链接:guanggao.jsp,links.jsp,savelinks.jsp 4 4. .3 3 主主要要功功能能流流程程 主页面 index.jsp 。 商 品 修 改 用户登陆 注册 管理进入 添加到购物车 新 闻 管 理 资 料 修 改 商 品 管 理 商 品 添 加 会 员 管 理 广 告 链 接 新 闻 修 改 新 闻 添 加 广 告 设 置 链 接 管 理 是否会员 退 出 返 回 搜 索 物 品 选 购 物 品 结帐付款 填写订货单购物成功 会 员 删 除退出 图 41 主要功能流程图 用户根据图示完成网上购物的基本流程,在前面已经详细说过。 4 4. .4 4 各各功功能能模模块块的的实实现现 4 4. .4 4. .1 1 数数据据库库的的连连接接 出于安全性的考虑,我们将与数据库的连接,单独写出来并进行编译,也 就是数据库连接的 javabean 文件6,编译出来的.class 文件是无法被修改的 只能通过源文件进行修改,我们在 jsp 页面中只用直接调用改方法即可,在本 系统中我们将其命名为为.faq 存放在 class/ckstudio/db 下设其 id 为 mdb,我们在需要对数据库进行操作的 时候只需在页面上添加这样一个标签即可。连接关键代码如下: string url = “jdbc:odbc:driver=microsoft access driver (*.mdb); dbq=“+strdirpath+“db.mdb“; 定义连接地址 connection conn = drivermanager.getconnection(url); 连接数据库 4 4. .4 4. .2 2 用用户户登登陆陆模模块块的的实实现现 用户登陆模块是防止非法用户登陆的第一道防线,通过它可以保护后台数 据库的安全性,当用户要进行定购时,首先要进入的就是身份验证界面,只有 在密码正确的情况下才能进行以后的购物,如果输入的密码不正确,则不能进 行定购。如果用户以浏览者的身份进入网站,则只能进行一般的商品浏览和搜 索,而不能进行选购,在点击添加购物车后,系统会判断该用户是否是登陆用 户,如果不是则弹出提示页面,提示用户必须先登陆才能定购商品,如果是第 一次登陆,请先注册。 主页面的效果图如下图 4-2 所示: 图 4-2 主页面示意图 如果用户还不是会员则提示用户进行注册,用户提交信息之后,系统开始 判断用户的注册信息是否有效,首先是用户名是否为空, (该处存在用户名命名 规则的问题,后面问题中会详细解决)用户输入的两次密码是否一致,然后依 次往后判断用户所填写的各项信息是否符合要求,直到所有信息均正确无误, 系统将该用户注册信息写入会员表即 member 并提示用户注册成功,用户登陆后, 就可以进行有效的购物了。 注册页面的效果图如下图 4-3 所示: 图 4-3 注册页面示意图 系统对用户的注册信息的验证实现如下: 用户输入的各项信息分别对应字段 先判断用户名是否为空 request.getparameter(“user_name“).equals(“) 同样道理对密码进行判断 判断两次输入是否一致 user_pass.equals(user_pass2) 其他选项与上面类似,如果条件符合则将该值赋给各个字段 用户名重复的验证代码为: sql=“select * from member where user_name=“+user_name+“; 当所有条件都符合的时候,系统将数据写入数据表,并返回成功页面,显 示用户所填的注册信息,写入关键语句为: sql=“insert into member(user_name,user_pass,user_adds,user_mail,user_tel,user_regi p,user_namec)values(“+user_name+“,“+user_pass+“,“+user_adds+ “,“+user_mail+“,“+user_tel+“,“+request.getremotehost()+“, “+getstr(request.getparameter(“user_namec“)“; 登陆的具体实现要通过一个全程变量,即session 变量来实现,在系统中则由一 个单独的 session.jsp 页面来放置该session。用户登录的界面dengluyufou.jsp,从 member 表查得用户提交的帐户名和密码正确后,用一个全局变量,即session 变 量保存这一消息(该变量名称为session(“user_name”))。示意图如图4-4 所示 图 4-4 登录示意图 具体的判断过程为: 若 session 中 user 为空即 session.getattribute(“user_name“)=null, 表明没有经过登陆与否的验证,则立即跳转到 dengluyufou.jsp,请用户登录; 并将用户登陆的帐号和密码通过 关键代码为:string sql=“select * from member where user_name=“+user_name+“; 如果 user_name 存在的话则判断其密码是否正确 如果为真则将用户信息赋给 session session.setattribute(“user_name“,“+rs.getstring(“user_name“)+“); 以方便系统对用户在操作一些会员功能时进行用户身份验证。 登录后,可以马上看到自己的资料,如图 4-5 所示: 图 4-5 用户信息示意图 用户在登录之后也可以对自己的资料进行修改,在点击主页面的修改资料 之后,弹出这样的一个页面,用户可以直接在文本框里修改,然后确认。如图 4-6 所示 图 4-6 用户资料修改示意图 修改这一过程的具体实现过程为 sql=“select * from member where user_name=“+user_name+“; 根据用户名将该用户的所有信息列出来,以供用户修改, 修改的方法采用的是 rs.updatestring(“user_pass“,user_pass);其他的类 似。 4 4. .4 4. .3 3 购购物物车车模模块块的的实实现现 当用户登陆成功以后,如果找到了希望定购的物品,在点击物品下方的定 购以后,系统会弹出一个新的页面,显示该物品已经添加进购物车,然后用户 需要选择定购的数量。页面效果如图 4-7 所示: 图 4-7 购物车示意图 在点击确认以后,该物品信息被后台添加到购物车表即 basket 表中,如果 用户需要继续购物,可以继续选择,不断添加,系统会自动将所有信息写入 basket 表,同时显示用户所购买的物品列表,及合计价格。 其具体代码实现过程为: 从 session 中取得该用户的信息 user_name=(string)session.getvalue(“user_name“); 对商品的信息进行提取以写入购物车表 具体的写入语句为: sql=“insert into basket(sh_id,user_name,basket_count,sh_name,sh_cash)“; sql=sql+“values(“+sh_ids+“,“+user_name+“,“+counts+“,“+s h_name+“,“+sh_cashs+“)“; 以下是用户执行确认后的示意图,如图 4-8 所示 图 4-8 所购商品信息示意图 如果用户在去收银台结帐前对已经选购的物品不满意时,可选择清空购物 车,同时系统也将 basket 表中相关信息删除。用户完成选购之后,可点击收银 台付款,系统返回最终选购物品列表和合计价格,如图 4-9 所示: 图 4-9 收银台结帐示意图 该步骤实现的关键语句为: string sql=“select * from basket where user_name=“+user_name+“and basket_check=false“; 系统只统计 basket_check 为否的该用户选购的商品信息。 用户再一次确认后,系统会显示购物成功并返回给用户一个定购单号,提 示用户填写收货人详细信息,包括姓名、地址、邮编、邮箱、电话、付款方式、 备注等信息,这些信息是系统自动从用户表中提取出来的,用户可以修改,如 图 4-10 所示 图 4-10 定货单示意图 这一步的具体实现与用户资料修改类似,都是先将该用户的相关资料从数据库 中调出来 sql6=“select * from member where user_name=“+(string) session.getvalue(“user_name“)+“;然后使用方法 update 对表中各项信息进 行修改。 确认后,系统弹出提交成功页面,如图 4-11 所示: 图 4-11 订货成功示意图 该页面也就是将用户提交的订单信息返回,并产生了一个唯一订单号,以方便 用户查询,这个订单号的产生,并不是随机产生的,而是使用了一定的规则, 在这里主要是根据用户名和订单产生的时间来生成订单号,具体的代码如下: string sub_number=“; string now=(string)(new java.util.date().tolocalestring(); sub_number=user_name+now; 相类似的,系统中的其他类似字段也可以使用这样规则来产生随机编号,以方 便管理 4 4. .4 4. .4 4 商商品品信信息息的的实实现现 商品信息主要是为了让顾客对所需要的信息就行了解。其中网站设置会员 价格和 vip 会员价格,一般会员享受会员价格,付费的 vip 会员享受 vip 价格。 其中商品显示的关键代码如下: sql=“select * from sh where sh_id=“+sh_id; 4 4. .4 4. .5 5 后后台台管管理理模模块块的的实实现现 网上购物系统除了能够让用户实现前台的浏览和购物等操作之外,还必须 能够使管理人员能够对系统的各种信息进行维护,比如商品的增加、删除、修 改,会员的审查,网站新闻的更新等等。管理功能是网上购物系统相当重要的 一部分功能。 管理员可以通过主页面的“后台管理”进入系统后台进行维护,点击之后, 首要的就是进行身份验证,输入正确的帐号,密码之后,方能进入。由于涉及 到交易,出于安全性考虑,管理员帐号应尽量少分配,密码也要尽量复杂,经 常更换。 具体实现关键代码如下: string sql=“select * from admin where admin_name=“+admin_name+“ and admin_pass=“+admin_pass+“; 进入之后系统管理的主页面 采用了框架结构,左边是一个树型菜单,右边 显示具体信息。 管理的主要功能有商品信息的更新,会员信息维护,网站信息维护,广告 链接设置等四大块,商品信息管理,主要就是添加新的商品,删除和修改已经 添加的商品。 添加商品的界面如图 4-11 所示: 图 4-11 商品添加界面 这一部分的实现也没有新的方法,使用的依然是一些 sql 语句来对相关数 据进行添加和修改,添加的关键的 sql 语句用 insert into 插入就可以。这里 不在贴出 修改则使用 update 语句。 删除商品主要用到的关键语句为 sql 语句: sql=“delete * from sh where sh_id=“+cint(request.getparameter(“sh_id“); 其中需要用到记录集分页功能,由于代码过长,故只说出主要思想: int pagesize =20; /设置每张网页显示两条记录 int showpage = 1; /设置欲显示的页数 int rowcount = 0; /resultset 的记录数目 int pagecount = 0; /resultset 分页后的总页数 int duoyu=0; sql=“select * from sh order by sh_id desc“; rs=mdb.executequery(sql); 然后 for 循环 hw 表,对数目进行判断。 点击修改,可看到以下界面,如图 4-12 所示: 图 4-12 商品修改界面 实现方法和添加的 sql 语句差不多,修改用 update 语句实现就可以了。 会员信息管理,则主要是添加会员和对一些恶意注册用户进行删除。 添加用户和添加商品的语句都是用 insert 插入,主要 sql 语句是: sql=“insert into member(user_name,user_pass,user_type) values(“+user_name+“,“+user_pass+“,“+user_type+“)“; mdb.executeinsert(sql); 以下是用户删除界面如图 4-13 所示: 图 4-13 会员信息管理界面 删除则用 delete 语句:sql=“select * from member where user_id=“+user_id+“; 4 4. .4 4. .6 6 商商品品搜搜索索模模块块的的实实现现 网上购物作为一个在网上展示自己商品的销售系统,如何能让用户以最快 的速度找到自己希望买到的物品,也是需要非常重视的一个问题,此时搜索引 擎也就必不可少了。本购物系统也做了一个小模块,以供用户进行一些模糊查 找,用户不必输入全部名称,只需输入一些关键词,系统就可以将符合该查询 条件的所有商品信息以网页形式返回给用户。 该搜索功能在 jsp 页面中实现的关键代码为: 则按商品名称进行搜索 sql=“select * from sh where sh_name like %“+sh_name+“% order by sh_id desc“;查找出所有含有该关键字的商品信息 4 4. .5 5 系系统统的的整整体体设设计计和和规规划划中中的的问问题题 由于是基于 b/s1的系统,网页在其中就承担着非常大的工作,包括向服 务端后台写入和修改数据,以及服务端响应客户端的请求,向客户端页面返回 数据,这些工作不可能只由几个网页来完成,但网页数量一多又必然结构混乱, 造成开发过程难以控制。 为解决这个问题,我采用了现代软件开发过程的模块化思想,先将系统功 能进行分解,大致可分为两部分,即前台和后台,前台又包括主页面及产品信 息展示页面、搜索功能页面、新闻页面、购物车及订单页面等几个大的部分, 后台包括会员信息管理、商品信息管理、新闻信息管理、等几个部分,各个部 分又由许多小的页面组成,这样一来虽然网页数量没有减少,但结构清晰了很 多,在开发过程中可以逐步,逐个模块的实现,提高了开发效率。 4 4. .6 6 开开发发功功能能模模块块所所遇遇到到的的难难点点 因为是第一次做这么完整的 jsp 系统,所以碰到的问题也很多,除了一些 基本的语法之外,感觉还是一些考虑问题的思维方式不太得当,比如我的这个 网上购物系统,我感觉难度比较大的还是购物车1这个模块比较的难设计,因 为过程比较复杂,他的一些逻辑处理就比较的难以用代码实现。 我参考了一些电子商务网站,研究了一下他们的购物流程,大概有了一些 处理的想法,用户在点击定购之后,系统先将该商品信息写入购物车页面,只 有当用户在选择了商品数量,及确认按钮之后,系统才将该信息写入 basket 表, 用户不选择商品数量,或者不点击确认按钮,系统就不把该商品信息写入 basket 表,这样就不至于造成 basket 表数据混乱,用户无法继续购物。 当用户完成选购,点击去收银台结算时,系统开始判断商品库中的这些商 品数量是否大于用户所选数量,如果没有,则提示用户没有该商品,如果有则 将所有 basket 表中属于该用户 id 的商品信息提出来,并合计价格,返回给用 户,用户如果确定付款购买,则给用户提供一个订货单,由用户填写一些基本 信息,确认之后,系统则产生一个唯一的订货单号,并将其返回给用户,以便 用户日后查询,同时,系统则将该用户所选购的商品信息以及用户信息放入到 订单表中。 这样就基本上实现了购物车的功能。 4 4. .7 7 系系统统中中存存在在的的问问题题及及拟拟定定的的解解决决方方法法 (1)第一个问题是用户在注册过程中,一些关键字段的命名规则存在着比较 大的缺陷,比如用户名的选择上,一般的习惯是规定只能从 az 和数字 09 的 随机组合,不能有特殊字符,而且只能以字母开头,不能以数字开头,用户名 的长度也有限制,我在系统中只考虑了为空的情况,这是不够
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2019年春 八年级下册 地理 人教版 说课稿:6.3《世界最大的黄土堆积区-黄土高原》说课稿
- 人大徽章改造工程方案(3篇)
- 青马工程主题活动方案(3篇)
- 宁波医院厨房工程方案(3篇)
- 民生工程建成运营方案(3篇)
- 幕墙工程吊篮销售方案(3篇)
- 抹灰工程技术方案(3篇)
- 2025年在线教育平台直播互动体验优化与学员满意度提升策略报告
- 黑龙江:新质生产力发展素材
- 新质生产力和数字治理
- 2024年中国融通旅业发展集团有限公司招聘笔试参考题库附带答案详解
- 民谣酒馆创业计划书
- 电工安全常识课件
- 温度计的前世今生
- 2021年出版专业职业资格考试中级出版专业理论与实务真题及答案
- 新产品可行性评估表
- 小学综合实践活动成长手册三年级上册第2课《传统游戏》教案
- 公众责任险典型公估报告
- 2023年大学生信息素养大赛考试参考题库500题(含答案)
- 【集成峰会】《2023-2024中国集成厨电产业发展蓝皮书》
- 小区业主公约
评论
0/150
提交评论