版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于J2EE的万淘客商城的设计与实现摘要网上商城是建立在网络上的虚拟购物中心,它避免了繁琐的商品选择过程,使购物过程简单、方便,适合现代快节奏的生活,能够有效控制商城的运营成本,为S卖货的啤酒。本购物系统建设的主要目的是降低信息传输和客户服务的成本,以实现分类浏览、购买等功能。重点讨论了系统的功能与实现、数据流与存储,包括目录、用户注册与登录、网上订购与购物、管理员维护等。本系统采用Java语言、SSH框架,结合AJAX、JQuery等技术,采用MVC思想,基于B/S模式进行形式化开发。在系统设计中,严格按照软件工程的理论和方法,对软件的模块、数据结构和功能进行了分析和确定。操作系统平台采用win10,后台数据库采用mysql。在系统权限控制的方面,可以做到更细的划分,让不同的角色进入系统后可以看到不同的东西,可以查询和统计分析,这样就能给相关人员提供一定程度的决策支持。关键词:B/S结构;在线购物系统;JAVA
AbstractOnlineshoppingmallisavirtualshoppingshoppingmallbuiltonthenetwork,whichavoidsthetediousprocessofselectingcommodities,andmakestheshoppingprocesseasyandconvenient,whichissuitableforthemodernfast-pacedlife.Atthesametime,itcaneffectivelycontroltheoperationcostofshoppingmallsandopenupanewchannelforsellinggoods.Themainpurposeoftheshoppingsystemistoreducethecostofinformationtransmissionandcustomerservicecosts,inordertoachieveclassificationbrowsing,purchasingandotherfunctions.Thispapermainlydiscussesthefunctionandrealizationofthesystem,dataflowandstorage,includingcommoditycatalog,userregistrationandlogin,onlineorderingandshopping,administratormaintenance,etc.ThissystemUSESJAVAlanguage,USESSSHframework,combinesAJAX,JQueryandothertechnologies,USESMVCthinking,andcarriesoutformaldevelopmentbasedonB/Smode.Inthedesignofthesysteminstrictaccordancewiththesoftwareengineeringtheoryandmethodtodeterminethespecificimplementationofthesoftwaremodule,datastructureandsystemfunctions,takeWin10astheoperatingsystemplatform,thebackgrounddatabaseMysql.Intheaspectofsystemauthoritycontrol,itcanbedividedintomoredetails,sothatdifferentrolescanseedifferentthings,queryandstatisticalanalysisafterenteringthesystem,soastoprovideacertaindegreeofdecisionsupportforrelevantpersonnel.Keywords:B/Sstructure;onlineshoppingsystem;JAVA
目录摘要 IAbstract II1绪论 11.1研究背景 11.2研究内容 11.3研究现状 22相关技术 32.1SSH框架 32.2Eclipse开发工具 32.3JAVA 43需求分析及功能定位 53.1系统的可行性分析 53.1.1经济可行性 53.1.2技术可行性 53.1.3操作可行性 53.2系统的需求及功能定位 53.2.1需求分析 53.2.2系统的功能分析及定位 63.3系统设计的相关技术解决方案 64系统详细设计 84.1系统用例图 84.2系统功能结构 94.3系统功能设计 94.3.1管理员模块 94.3.2用户模块 114.4数据库设计 134.5表详细设计 145系统实现 185.1系统目录图 185.2页面设计及实现 195.2.1用户注册页面 195.2.2用户登录页面 215.2.3购物车页面 225.2.4管理员界面 235.3系统安全性与通用性的实现 245.3.1系统的安全性实现 245.3.2系统通用性的实现 246系统测试 256.1系统部分测试分析 256.2测试内容 256.2.1注册测试 256.2.2登录测试 26结论 28参考文献 28致谢 31PAGE51绪论1.1研究背景随着中国加入世贸组织,国外物流企业进一步进入中国物流市场,给中国带来了新的物流服务理念、新的管理模式、新的物流技术和设备,这对中国物流的发展是巨大的推动。随着Internet的迅速发展,社会竞争越来越激烈,在这个竞争和效率并存的社会,人们有很强的时间观念,信息社会的高科技,商品经济化的高效益,使网络的应用已普及到经济和社会生活的各个领域。基于B/S模式的网络销售系统克服了传统销售方式时所带来的人力、物力以及时间上的浪费,同时也保证了销售过程的科学化、高效化,使销售过程方便、准确、快捷。随着网络、通信和信息技术的突破性进展,Internet在全球爆炸性增长并迅速普及。在这一前提下,电子商务应运而生了。电子商务是以互联网为基础,以交易双方为主体,以银行电子支付结算为手段,以客户数据为基础的全新商业模式。它可以使企业和供应商之间的联系更加紧密,更快地满足客户的需求,还可以让企业在全球范围内选择最好的供应商。在全球市场销售产品。网站是为了方便用户进行网上购物,提供便捷的交易平台,通过电子商务网站的建设以实现对商业零售商品提供信息化管理。网上购物网站主要包括商品目录、用户注册、网上订货与购物、商品查询等。购物网站是商店与消费者两者之间的电子商务里的B2C模式。本系统里的商品和市场上的产品在质量一样的前提下,价格上有明显的优势,而且方便消费者能够浏览到更多产品信息,支付方式安全可靠,足不出户就能购买到自己喜欢的东西,是定点销售模式所不能做到的。1.2研究内容经过四年的在校学习,结合课外自学,设计实现一个基于B/S的在线购物统。在开发该系统前需进行相关的准备工作,首先,调研以及需求分析(主要是参照相关的网站—)。其次,对该系统的功能进行分析与定位,以目前的条件实现不了的可以进行模拟操作。然后,划分功能模块,对系统的功能框架以及每个功能模块之间的关系进行简单合理的描述。最后,使用面向对象的思想,结合需求设计实体类,并设计系统的相关业务方法。该系统将实现用户登录,注册,商品浏览,商品导航,购物车,收获地址维护,下订单(模拟实现)等。1.3研究现状进入21世纪,由于信息技术的高速发展,带动了电子商务的发展,从而涌现出了大量的电子商务开发技术,基于ASP、JAVA、PHP等。张银鹤在在实现网站购物的系统里用的是Servlet实现控制。Servlet集控制、显示、业务处理与一身。使用JAVABean负责具体业务,JAVA负责显示输入信息,Servlet负责页面控制。该系统这是简单的实现的商品的选购,提交,以及查看所有商品,这是远远达不到用户的需求的。邹竹彪在实现网站购物的案例中,使用了JAVA技术,在页面使用JSTL标签库来获得页面中输入的值,后台数据库选用Mysql。实现了用户注册,图片管理,购物车,以及新闻发布等功能。辛峰使用JAVA架构实现了一个电子商务系统,他选用的开发环境是windowsXP,后台数据库选用的是MicrosoftAccess2000,实现了管理员功能模块、用户模块、商品浏览模块、订单模块、以及留言模块。候美在实现基于WEB的网站时候,也是使用了JAVA技术,后台使用的是SQLServer2000,页面制作使用的工具是Dreaweaver,实现了用户登录、商品浏览、购物车、留言、管理员维护以及支付功能,实现了一个较为完善的系统。当今社会要求我们运用最新或开发新的技术来满足我们的用户,这就为我们提供了庞大的市场,前景比较广阔,新的技术(例如:XML技术等在Internet中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。
2相关技术2.1SSH框架与SSH框架集成的系统可以分为四层:表示层、业务逻辑层、数据持久层和域模块层,帮助开发人员在短时间内构建结构清晰、可重用性好、维护方便的web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的JAVA对象,然后编写基本的DAO(DataAccessObjects)接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现JAVA类与数据库之间的转换和访问。图2.1SSH框架2.2Eclipse开发工具Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。尽管大多数用户都乐于使用Eclipse作为Java集成开发环境(IDE),但伊柯丽斯的目标并不局限于此。eclipse还包括一个插件开发环境(pde),它面向那些希望扩展eclipse的软件开发人员,因为它允许他们构建与eclipse环境无缝集成的工具。由于eclipse中的一切都是一个插件,所以所有工具开发人员都有相同的竞争环境来为eclipse提供插件,并为用户提供一致和统一的集成开发环境。2.3JAVAJava是一个面向对象的编程语言,由太阳公司的詹姆斯·高斯林在20世纪90年代初开发,其目标是为诸如家用电器这样的小型系统建立一种编程语言,以解决诸如电视机、电视机等家用电器的控制和通信问题。电话,闹钟和烤面包机。由于市场对这些智能家电的需求没有预期的高,孙先生放弃了这个计划。就在橡树差点失败的时候,随着互联网的发展,Sun看到橡树在计算机网络上的广阔应用前景,因此他改造了橡树,它在1995年5月以“爪哇”的名义正式发布。随着Internet的飞速发展,Java已经逐渐成为一种重要的网络编程语言。与传统程序不同,Sun将Java作为一种开放的技术。Sun对Java编程语言的解释是Java编程语言是一种简单的、面向对象的、分布式的、解释性的、健壮的、系统无关的、可移植的、高性能的、多线程的、动态的语言。
3需求分析及功能定位3.1系统的可行性分析随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来越丰富,电子商务已经成为网上的一股潮流。我们相信要不了太长有时间,顾客就可以在网络世界上获得他们在现实世界上可以获得的所有商品和服务。可行性研究是为了找出系统开发项目能否实现和值得研究。实际上,这是一个大大简化系统分析和系统设计的过程。因此,进行可执行性分析是非常必要和重要的。经过初步的设计目标和市场。实地调查得出以下可行性分析。3.1.1经济可行性该系统开发需求的比较低,加上具有成熟的软硬件环境,所以在软硬件的支出上十分有限。而且,目标系统不是很复杂,开发的周期较短,人员经济支出不大。当系统实际投入运行后,它打破了传统的销售模式,极大限度的方便了用户,也为系统的进一步推广创造了条件。这带来的经济回报将远超过投入,以从经济角度来讲,此系统可行。3.1.2技术可行性技术可行性:开发工具Eclipse,使用Ajax,JQuery、JAVAScript等简单易学的脚本语言,结合HTML代码,即可快速地完成系统的应用程序。无须编译、容易编写,可在服务器端直接执行。使用普通的记事本既可以进行编辑设计。使用的数据库MySQL容易获得,且技术方面可以教快学得到。3.1.3操作可行性操作可行性:该系统既有简洁的操作界面,可以使用户操作方便。该系统是基于WEB的,以网页形式展现在用户的面前。只要是懂得上网的人都可以对该系统进行操作。本系统尽力为用户着想,因而该系统是方便可操作的。3.2系统的需求及功能定位3.2.1需求分析随着互联网的蓬勃发展,作为电子商务的一种形式,网上购物中心以其高效率、低成本的优势逐渐成为一种新的商业模式和理念。人们不再满足于浏览和发布使用信息,而是渴望充分享受网络带来的更多便利。网购正适应当今社会快节奏的生活,让顾客足不出户就能轻松选择自己喜欢的商品。网上商城的主要目的是通过网站的推广,实现企业产品和服务的互联互通,让顾客了解企业和企业提供的最新产品,及时提供网上服务和订单公关。为客户处理功能。从长远的战略目标来看,商务网站不仅是通过互联网、内联网和外联网来推广产品和服务,更是一个买卖双方、制造商和合作伙伴相结合的平台,从而消除了时间和空间。网上商城致力于提供电脑及相关IT产品展示及订购为核心的网上购物服务。是企业产品与客户服务之间建立更加直接沟通及交流的平台。宣传自己的产品,是企业上网的主要目的之一,将自己的产品展示给客户,让客户通过网站便能够自由选购,是产品预定系统的主要目的。3.2.2系统的功能分析及定位本系统主要实现以主要功能:(1)管理员身份验证(为合法用户提供一个后台入口);(2)添加商品(向商品表插入前台首页展示的商品信息);(3)订单信息管理(网站管理者对用户订单的执行和编辑状态);(4)查询用户信息管理模块(查询本人信息);(5)商品浏览模块(用户对商品进行浏览);(6)购物车管理模块;(7)用户注册与登录模块;(8)地址以及订单模块。3.3系统设计的相关技术解决方案一个非常完善的网上商城应该提供更加方便和强大的信息查询功能,如相应的网络运营和服务。由于开发时间有限,系统只提供简单的排序和查询功能。对信息的保护手段仅限于设置用户级别,比较简单,不能防止恶意的破坏,安全性能有待进一步完善。基于目前的时间以及经验限制,本系统某些功能只能模拟实现,例如:用户注册信息的邮箱验证,以及支付功能等。本系统在Windows7环境下,采用Struts2框架、JAVA编程技术和Mysql开发的网上商城,设计具有安全性和稳定性。
4系统详细设计4.1系统用例图图4.1系统普通用户用例图正如图4.1所示,普通用户可以进行注册,注册时候应进行邮箱验证。登录,登录的时候要输入正确的密码以及验证码,然后进入商品浏览页面,可以点击商品进入商品详细页面点击加入购物车。进入购物车,增加购买商品的数量,删除商品,以及清空购物车。图4.2系统管理员用例图4.2系统功能结构图4.3系统功能结构图4.3系统功能设计网上商城的设计主要是针对的用户是个人,商品的种类和数量较少,用户的数量和来源受到一定的限制,操作和功能上也尽量的满足用户的需求,为了使本系统更加人性化,更加适应发展需要,主要对以下的功能进行了具体的设计。4.3.1管理员模块(1)查询全部用户:需求描述:管理员登陆系统后,可以查询全部用户;只能看用户名表4.1管理员查询全部用户功能描述用例名称编辑全部商品参与者管理员目标管理员可以编辑全部商品信息前置条件系统维护时间内,登录用户是管理员基本事件流1、管理员点击登录进入管理员页面;2、页面将显示用户的用户名(2)增加商品:需求说明:管理员登录系统后,可以增加商品,输入商品的类型号、类型名称、增加时间、商品的详细信息:商品号、商品名称、商品价格。表4.2管理员添加商品功能用例描述用例名称添加商品参与者管理员目标管理员可以添加商品及其详细信息前置条件系统维护时间内,登录用户是管理员基本事件流1、管理员在相应的输入框输入类型编号,类型名称,添加时间,以及商品的详细信息,如商品编号,商品名称,商品价格,点击“添加”按钮;2、系统将会执行插入该商品操作(3)修改商品:需求描述:管理员登陆系统后,可以修改商品价格;打开修改页面,输入商品编号和新的价格点击商品修改就可以了。表4.3管理员修改商品功能用例描述参与者管理员用例名称修改商品目标管理员可以添加商品及其详细信息前置条件系统维护时间内,登录用户为管理员基本事件流1、管理员通过商品编号查询到要修改的商品,点击修改;2、管理员进入修改页面,在相应的输入框输入商品新的属性,点击确定;3、系统将会执行更新商品信息操作(4)删除商品:需求描述:管理员登陆后台系统后,可以进行商品删除;打开商品管理页面,选择要删除的商品,点击删除就可以了。表4.4管理员删除商品功能用例描述参与者管理员用例名称删除商品目标管理员可以删除商品前置条件系统维护时间内,登录用户为管理员基本事件流1、管理员通过商品编号查询到要删除的商品,点击删除;2、系统弹出提示框,提示是否确认修改,点击确认;3、系统将会执行删除商品操作4.3.2用户模块(1)用户注册:需求描述:用户填写用户名、手机号码、密码等信息,点击注册,完成用户注册。表4.5普通用户注册功能用例描述参与者普通用户用例名称用户注册目标普通用户在系统中注册一个帐号前置条件系统运行正常基本事件流1、用户点击主页面“注册”按钮,或登录界面的快速注册按钮;2、进入用户注册页面,在相应输入框内输入个人基本信息,经过页面相关验证,点击确定;3、在相应输入框内输入该字符,点击确定;4、页面显示验证成功,注册完成(2)用户登录:需求描述:根据1)中的用户名和密码,点击登录,进入商品浏览页面。表4.6普通用户登录功能用例描述参与者普通用户用例名称用户登录目标已注册普通用户登录系统前置条件系统运行正常,用户已完成注册基本事件流1、用户在登录界面输入框内,输入用户名和密码,点击登录;2、登录成功,跳转至商品主界面(3)商品浏览:需求描述:用户进入浏览主页面,可以进行商品浏览,点击进去,可以看到商品的详细信息,点击左边的商品导航,可以分类别浏览商品表4.7普通用户商品浏览功能用例描述参与者普通用户用例名称商品浏览目标用户可以进行商品浏览前置条件系统运行正常基本事件流1、用户在商品主界面查看商品价格、名字、图片,点击该商品;2、进入商品详细信息页面;3、点击加入购物车;3、用户点击左边导航里商品具体类别按钮;4、进入本类商品页面,点击商品;5、进入商品详细信息页面;6、点击加入购物车(4)修改个人信息:需求描述:用户登录系统后,可以修改个人信息。修改后的用户昵称、密码等信息;信息不能丢失,如果有一项没有填写,给出提示。表4.8普通用户修改个人信息功能用例描述参与者普通用户用例名称用户修改个人信息目标用户登陆后修改个人基本信息前置条件系统运行正常,用户完成注册并完成邮箱验证,正常登录基本事件流1、用户登录后,在商品页面点击“我的帐户”;2、在相应的输入框内输入要修改的个人信息,点击“确定”按钮;3、完成修改,系统执行个人基本信息更新操作(5)查看购物车:需求描述:点击商品详情页面的添加购物车按钮,商品将被添加到购物车中,点击进入购物车页面,可以看到要购买商品的相关信息,可以删除商品,添加数量很多商品,你可以清空购物车。表4.9普通用户查看购物车功能用例描述参与者普通用户用例名称用户查看购物车信息目标用户将商品加入购物车后,点击购物车,查看购物车商品前置条件系统运行正常,用户已将商品加入购物车基本事件流1、用户登录后,在商品页面点击“购物车”;2、在数量按钮内修改要购买商品的数量;3、点击“删除“按钮,删除不需要购买的商品(6)订单模块:需求描述:点击提交订单,系统进行模拟付款,然后生成订单。页面显示订单的相关信息表4.10普通用户确认订单功能用例描述参与者普通用户用例名称确认订单目标用户登陆,下了订单,并填写完收货地址后,确认订单前置条件系统运行正常,用户填写完了收货地址基本事件流1、进入订单确认页面,确认填写的信息都正确,点击“以上信息正确,提交订单”按钮;2、订单生成,显示订单号,与金额4.4数据库设计本系统采用mysql关系数据库。mysql是一个快速、多线程、多用户的sql数据库服务器。由于它的开源特性,它是许多小型系统的首选。如下是根据用户需求设定的表结构,以及一些简单的说明。4.5表详细设计表4.13f_user用户信息表字段名数据项字段类型(长度)约束条件是否必填ID用户唯一标识Int(16)auto_increment业务主键是Nick用户昵称VARCHAR(50)否Password用户密码VARCHAR(50)是Email用户邮箱VARCHAR(128)是Check_code邮箱验证码VARCHAR(50)否表4.14f_flower商品信息表字段名数据项字段类型(长度)约束条件是否必填ID商品唯一标识int(16)业务主键是F_Name名VARCHAR(128)是F_Price商品价格double是F_Origin商品产地VARCHAR(50)否F_Image商品图片VARCHAR(100)是表4.15f_order用户订单表字段名数据项字段类型(长度)约束条件是否必填ID订单ID,订单唯一标识Int(16)auto_increment业务主键是User_id用户IDInt(16)auto_increment关联用户信息表是Status订单状态Int(10)是Order_time下订单时间Bigint(30)是Order_desc订单描述VARCHAR(100)否Total_price总价钱Double是Receive_name收货人姓名VARCHAR(100)否Postcode邮编VARCHAR(6)否Mobile手机号码VARCHAR(20)否Phone固定电话VARCHAR(20)否表4.16f_shopping订单明细表字段名数据项字段类型(长度)约束条件是否必填ID购物ID,唯一标识Int(16)auto_increment业务主键是Order_id订单idInt(16)auto_increment关联用户订单表是Product_id产品idInt(10)关联产品表是Product_name产品名字VARCHAR(100)关联产品表是Fixed_price市场价double是Special_offer特价double是Product_num商品数量Int(10)是Amount商品总量double是表4.17f_product产品表字段名数据项字段类型(长度)约束条件是否必填ID产品id,唯一标识Int(16)auto_increment业务主键Product_name产品名称VARCHAR(100)是Fixed_price市场价double是Special_offer特价double是Has_deleted是否被删除Int(1)默认为0是Product_pic产品图片varchar(200)否表4.18f_sort商品类别表字段名数据项字段类型(长度)约束条件是否必填ID类别idInt(16)auto_increment业务主键是Turn导航顺序Int(10)是E_name英文名称VARCHAR(20)是Parent_id父类别idInt(16)是表4.19f_sort_product商品类别关系表字段名数据项字段类型(长度)约束条件是否必填ID唯一标识Int(16)业务主键是Product_id产品IDint(16)关联产品表是Sort_id商品类别idint(16)关联商品类别表是表4.20f_harvest_address收获地址表字段名数据项字段类型(长度)约束条件是否必填ID收获地址id,唯一标识int(16)auto_increment业务主键是User_id用户idInt(16)关联用户信息表是Receive_name收货人名称VARCHAR(100)是Full_address收获地址VARCHAR(200)是Postcode邮编VARCHAR(6)是Mobile手机号码VARCHAR(20)否Phone固定电话VARCHAR920)否
5系统实现5.1系统目录图系统工程名为:xianhua。包含11个包,按从上至下的顺序,第一个为基类包,包中包含一个基类(BaseAction),类实现三个接口,分别是:SessionAware,ServletRequestAware,ServletResponseAware,为业务处理类获取三个内置对象:session,request,response。第二个到第五个为页面相应请求要调用的Action,第六个为工厂接口包,提供数据访问接口,第七个为:实现六中的接口、访问数据库的具体实现类的包,第八个为实体包,第九个为具体业务逻辑接口包,第十个为具体业务逻辑实现类包,第十一个为工具包,包含验证码生成类,常量类,以及数据库连接类等。第一个配置文件是连接数据库参数配置文件。最后一个是struts2的基本配置文件。其他四个相关的struts2文件通过include加载,另一个xml继承该文件。图5.1连接数据库具体配置图driverClassName:数据库驱动名字,不同的数据库名字不同,本系统采用的是mysql。url:数据库驱动路径:包括要连接的数据库地址,本地的话则用localhost,端口号,数据库名。Username:数据库用户名,password:数据库用户密码,maxActive最大连接数量,initialSize:创建连接池时有效的连接对象个数,maxWait:发生超时等待时,最长的等待时间5.2页面设计及实现5.2.1用户注册页面图5.2用户注册界面注册界面由用户名输入框、密码输入框、验证码输入框、密码确认框和“提交注册信息”按钮组成。这些组件包含在表单中。组件描述如下:表5.1用户注册界面组件组件名类型描述PassWordpassword密码框,提示用户输入有效的密码,输入格式错误,则触发register.JAVA页面Jquery插件验证,提示用户输入有效的密码RexPassWordPassword密码确认框,用户再次输入密码,输入格式错误,则触发register.JAVA页面Jquery插件验证,提示用户输入有效的密码Validate_Codetext验证码输入框,输入验证码,调用,移开鼠标,触发register.JAVA页面中的失去焦点事件,调用CheckCodeAction类中的execute方法,進行验证码验证submitbutton提交注册信息按钮,点击,执行register.action,调用RegisterAction类的execute()方法,进行用户的插入myformform表单,包含以上组件表5.2注册模块实现核心代码表@RequestMapping("zhuce") /* * *用户注册 **/ publicStringzhuce(Yh_userqdyser,HttpServletRequestrequest,HttpServletResponseresponse)throws ParseException,UnsupportedEncodingException{ request.setCharacterEncoding("utf-8"); booleanboo=yh_userqdBiz.login(yser); if(boo){ request.setAttribute("message","用户已存在!!!"); return"zhuce"; }else{//完成第二步:没有该用户,完成添加功能。 booleanboo2=yh_userqdBiz.insertuser(yser); if(boo2){ request.setAttribute("message","注册成功,请登录"); return"login"; }else{ System.out.println("注册失败!"); request.setAttribute("message","注册失败,请重试!"); return"zhuce"; } } }5.2.2用户登录页面图5.3用户登录页面用户登录界面,由用户名输入框,密码输入框以及登录按钮,快速注册新用户按钮等组件组成,组件描述如下:表5.3用户登录界面组件介绍组件名类型说明Nametext用户名输入框,输入有效的已注册用户,否则会提示错误PassWordpassword输入注册时的用户密码Submitbutton登录按钮,点击登录,进行用户名和密码验证,调用LoginAction类的execute方法表5.4登录实现核心代码表@RequestMapping("denglu") /* *用户登录 **/ publicStringdenglu(Stringyh_user_id,Stringyh_password, HttpServletRequestrequest,HttpServletResponseresponse){ Yh_userqdyser=newYh_userqd(); yser.setYh_user_id(yh_user_id); yser.setYh_password(yh_password); System.out.println(yh_user_id+";"+yh_password); booleanboo=yh_userqdBiz.login(yser); if(boo){ System.out.println("登录成功!"); Yh_userqdy=yh_userqdBiz.findinfo(yh_user_id); System.out.println(y.getYh_status()); request.getSession().setAttribute("yh_user",yser); request.getSession().setAttribute("yu",y); return"zhuye"; }else{ System.out.println("登录失败!"); return"login"; } }5.2.3购物车页面图5.5购物车模块用户购物车页面,用户可以进行商品数量的修改,可以删除购物车里的商品,清空购物车,继续挑选商品,和提交我的订单。表5.5购物车组件介绍组件名类型说明continuebutton继续添加按钮,点击按钮,跳转至main.JAVA商品主页面,继续挑选商品referbutton提交订单按钮,点击按钮,触发order.action类,调用execute方法表5.6购物车业务处理核心代码@RequestMapping("gwc") /* *添加到购物车 **/ publicStringgwc(HttpServletRequestrequest){ ArrayList<Yh_sc>list=igwcBiz.getall(); request.setAttribute("list",list); return"gwc"; }5.2.4管理员界面图5.6管理员维护用户图管理员可以对用户进行删除和修改。图5.7管理员维护商品图管理员可以对商品进行修改,以及添加商品。5.3系统安全性与通用性的实现5.3.1系统的安全性实现每一个系统的建立都有对其安全性的需求,对于电子商务系统也是一样要防止别人篡改数据问题。为了避免篡改情况的发生,在本系统实现中为不同的用户角色分配了相应的权限,用户要修改某些数据时,一方面对用户的权限进行检测,但是每次都检测的话程序非常繁琐,所以本系统采用JSP的session对象。另外在安全性方面本系统还采用了验证码模块技术,每次用户对重要的数据操作时都要进行手机短信验证,这也为系统安全性的实现提供了保证。5.3.2系统通用性的实现本系统要求能够满足不同商家和顾客的需求,这就说明了本系统能够适应不同的环境需求,有较强的适应能力和通用性。本系统是基于JAVA技术开发的网上商城,JAVA的开源性和可移植性等优点也在本系统中体现了出来,可以非常方便的实现系统平台的转换。对于后台不同的数据库系统的改变,只要修改系统数据库中通用模块驱动程序的注册信息即可轻松实现后台数据库的改变。由以上可以看出,本网上商城性能需求分析中的通用性需求得到了实现。
6系统测试6.1系统部分测试分析系统完成之后,对各个模块的功能进行了详细的测试,输入数据和预测输出数据相比,发现了一些问题。主要是在查询过程中,预期的查询结果与实际结果不一致。有时,目标没有实现。数据库中表之间的关联考虑得不够仔细,因此经常会出现一些小错误。还有查询条件的前后数据类型不一致也是一个很常见的错误,需要靠一步步的查找解决。各个模块组装完成后,又会出现一些问题。本文测试的重点放在用户注册与登录。6.2测试内容6.2.1注册测试表6.1用户注册测试用例1用例编号用户注册测试用例1测试优先级高前置条件系统正常运行,进入注册页面用例类型异常事件输入数据Email(用户名):fdfdf密码:111111(第一次)确认码:1111111(第二次)验证码:rgfg执行步骤进入“注册”页面输入相应数据点击“提交注册信息”按钮数据库中验证数据预期输出一、鼠标移开输入框,提示相关错误信息二、执行步骤3后,在数据库f_user表中找不到该用户实际结果没有完成注册,并提示错误,符合预期输出表6.2用户注册测试用例2用例编号用户注册测试用例2测试优先级高前置条件系统正常运行,进入注册页面用例类型正常事件输入数据Email(用户名):545384243@密码:111111(第一次)确认密码:111111(第二次)验证码:4dcg执行步骤进入注册页面输入相应数据点击“提交注册信息”按钮数据库中验证数据预期输出页面有Email,验证码正确的提示数据库中f_user表中有该用户实际结果符合预期6.2.2登录测试表6.3用户登录测试用例1用例编号用户登录测试用例1测试优先级高前置条件系统正常运行,进入注册页面用例类型异常事件输入数据Email(用户名):fdfgdgg@密码:111111验证码:1108执行步骤进入登录页面输入相应数据点击“登录”按钮预期输出一:页面提示“系统无此用户”二:页面不跳转实际结果符合预期表6.4用户登录测试用例2用例编号用户登录测试用例2测试优先级高前置条件系统正常运行,进入注册页面用例类型异常事件输入数据Email(用户名):545384243@密码:111111111验证码:c292执行步骤进入登录页面输入相应数据点击“登录”按钮预期输出一:页面提示“密码错误”二:页面不跳转实际结果符合预期表6.5用户登录测试用例3用例编号用户登录测试用例3测试优先级高前置条件系统正常运行,进入注册页面用例类型正常事件输入数据Email(用户名):545384243@密码:111111验证码:gcg6执行步骤进入登录页面输入相应数据点击“登录”按钮预期输出进入主页面实际结果符合预期
结论毕业设计是我在大学学习的最后一个环节,也是我所学的基础知识和专业知识的综合运用。这是一个再学习、再提高的综合过程,也是对我大学生活的一次考验。这个过程有助于培养我的学习能力和独立性。我选的题目是基于JAVA的网上商城,该系统实现的主要功能是用户注册、登录、浏览商品、购买商品、查看购物车、下订单、确认订单等。在设计时,导师着重强调了工作量的安排,督促我尽快完成设计。设计的过程中我遇到了许多的问题,我相信这是绝大多数同学都遇到的,我也不例外。我选这个题目是想自己参照某个网站,独立自主的完成一个小型的项目,发现一些平时存在的不足与问题并解决,尽量让自己在大学中少留下一些遗憾。我选的这个题目是可以做的非常完善的,对于这么实际的工程,这是我第一次接触,因此做的也很认真。虽然在毕业设计的过程中存在许许多多的问题,但通过自己不断的查阅资料和导师的悉心指导,最后所有困难都迎刃而解。这对于培养我的自学能力和独立工作能力是非常有帮助的。通过本次毕业设计,我感到自己应用基础知识及专业知识解决具体问题的能力有了非常大的提高,并且这次毕业设计的选题,是一个有很大实用价值的项目,在我毕业之前,它是一次非常重要的练习。通过这次的毕业设计,到了工作单位后,我将能够更快速的适应工作岗位和工作要求。这个项目是非常有扩展价值的,在系统权限控制
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖南省建筑安全员《C证》考试题库及答案
- 2025甘肃省建筑安全员-C证(专职安全员)考试题库
- 2025年山西省建筑安全员A证考试题库及答案
- XX科技集团开工大吉课件模板
- 班主任工作经验交流52
- 《心理健康案例》课件
- 《扑动及纤颤》课件
- 三年级科学复习
- 单位人力资源管理制度范文大全十篇
- 单位管理制度展示大全人员管理篇
- 第一学期六年级家长会课件1
- 年产120万吨氧化铝拜尔法生产高压溶出工艺设计
- APQP产品开发流程与管理(汽车行业)课件
- 2021年监理工程师《建设工程案例分析(水利工程)》真题及答案
- 中心卫生院关于成立按病种分值付费(DIP)工作领导小组及制度的通知
- 医院感染监测清单
- 社区老年人项目计划书
- 《1.我又长大了一岁》教学课件∣泰山版
- 断裂力学-1绪论课件
- 深基坑工程验收表
- 医学交流课件:RCT的基本概念及原则(PPT 37页)
评论
0/150
提交评论