基于java的网上商城设计实现分析_第1页
基于java的网上商城设计实现分析_第2页
基于java的网上商城设计实现分析_第3页
基于java的网上商城设计实现分析_第4页
基于java的网上商城设计实现分析_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、成功财经学院毕业论文设计基于JAVA的网上商城设计与实现系部名称:信息工程系专业名称:计算机科学与技术学生XX:峰指导教师:晓东讲师二0一七年四月摘要随着互联网技术的开展,全世界几乎所有的行业都在互联网的影响下得到了好的变化,互联网技术的逐渐成熟和开展,使生产力得到了巨大的开展,可以说互联网是第四次工业革命也毫不为过。互联网的开展催生了电子商务,电子商务的到来预示着网络营销潮流的到来。企业与客户之间的营销关系也正在逐渐由实体店面销售转变为网络电子商务营销,越来越多的企业开设自己的网上购物平台来吸引更多互联网客户,同时也大大降低了实体地点面营销的本钱,在保证质量的前提下,增加了企业的收益。本课题

2、就是在这种环境下应运而生的,课题主要是利用SSM技术实现网上购物商城的前台与后台系统。采用分布式与集群相配合的模式来开发和部署该系统,采用这种方法开发的商城系统不仅开发速度快,开发效率高,开发层次明确而且还能能够承载大数据量的访问,而且这套系统对当下想要进军商城的商家来说具有非常重要的参考价值。关键词:购物商城;SSM技术;设计与实现AbstractWiththedevelopmentofInternettechnology,almostallindustriesallovertheworldintheInternethasbeenagoodchange,Internettechnologyi

3、sgraduallymatureanddevelopment,sothatproductivityhasgotenormousdevelopment,canbesaidthattheInternetisthefourthindustrialrevolutionisalsonottoomuch.ThedevelopmentoftheInternetgavebirthtoe-merce.Thearrivalofe-merceindicatesthearrivalofnetworkmarketing.Betweentheenterpriseandthecustomerrelationshipmark

4、etingisalsograduallybytheentitystoresalesintoe-mercenetworkmarketing,moreandmoreenterprisessetuptheirownonlineshoppingplatformtoattractmorecustomerstotheInternet,butalsogreatlyreducesthecostofmarketingentitylocation,underthepremiseofguaranteeingquality,increasetheineoftheenterprise.Thistopicisinthis

5、environmentcameintobeing,themaintaskistouseSSMtechnologytoachieveonlineshoppingmallfrontandbackofficesystem.Usingdistributedandclustermatchingmodeltodevelopanddeploythesystem,usingthismethodnotonlythedevelopmentofshoppingmalldevelopmentspeed,highdevelopmentefficiency,butalsoacleardevelopmentlevelcap

6、ableofcarryingalargeamountofdataaccess,andthissystemhasveryimportantreferencevalueforthecurrentArmywantedtoenterthemallsitebusinesses.Keyword:Shoppingmall;SSMtechnology;DesignandImplementation.word.zl.目录绪论1 TOC o 1-5 h z HYPERLINK l bookmark16 o Current Document 研究的背景和意义1研究的背景1研究的意义1研究容1 HYPERLINK l

7、 bookmark20 o Current Document 论文组织构造2商城系统开发技术及工具介绍3 HYPERLINK l bookmark24 o Current Document 商城开发的核心技术3Json雨介3Client简介4Cookie简介5Sessions介6Sol简介7SSMI1架技术7框架技术概述7SpringMVCf架8MybatisH架9Spring架11商城开发工具11EcplipseR其才S件11Tomcat效劳器12MySQL数据库12Redi嗷据库12商城系统工程需求分析13目标13商城业务流程图13商城后台业务流程图13商城前台务流程图14 TOC o 1

8、-5 h z HYPERLINK l bookmark38 o Current Document 商城系统设计及实现16 HYPERLINK l bookmark40 o Current Document 商城总体开发架构16 HYPERLINK l bookmark42 o Current Document 商城框架实现17Spring合SpringMVC17Springs合Mybatis18Spring合Jedis19 HYPERLINK l bookmark44 o Current Document 商城主要功能模块实现20商城后台商品管理实现20商城后台容管理实现22商城前台单点登录的

9、实现25商城前台solr全文搜索的实现27 HYPERLINK l bookmark46 o Current Document 商城系统运行结果30 HYPERLINK l bookmark48 o Current Document 商城后台运行结果30商城前台新增产品30商城前台商品容管理31 HYPERLINK l bookmark50 o Current Document 商城前台运行结果32商城前台用户搜索32商城前台用户注册32商城用户购物车34 HYPERLINK l bookmark10 o Current Document 总结以及展望36参考文献36致37绪论研究的背景和意义

10、研究的背景在衣食等购置方面,传统的方式是我们需要花费时间到固定的地方挑选,假设购置的东西多还需要额外的花费去运输。但是随着中国经济的快速开展,人们对物质生活要求的提升,工作时间的不充足,购置量偏大这些问题往往会使我们感到厌烦。如何改善人们的购物体验,如何使商家与顾客实现共赢,人们一直在尝试各种方法解决这个问题。随着互联网技术的开展,网络与人们的日常生活也产生了千丝万缕的关系。信息技术也改变了人们的思维方式,现在越来越多的人通过互联网来完成自己想做的事情。随着数据库,计算机硬件,存储技术的开展,信息技术已经覆盖到日常生活的各个方面,现在人们已经离不开互联网了。网上购物商城就是在这种大趋势的推动下

11、产生的。研究的意义在衣食等方面网上购物商城充当着一个重要的角色,在以往我们需要花费时间去挑选去到固定的地方去买。而现在我们只需要动动我们的手指很多东西就可以送货上门。可以证明商城很火爆的一个列子是天猫双十一。可以说是开辟了网上购物的一个春天,成交量超过千亿,可以说明现在互联网购物商城方面的一个开展趋势。研究容本系统采用SSM搭建的分布式工程,使用Maven管理Jar使用Git作为版本的管理工具,由此将工程分为如下几个模块:1)后台管理:包括管理员对商品的增删改查,对商品规格参数的增删改查。2)主页展示:类似京东的主页面,让商品分类目展示。3)用户注册:用户登录成功之后才能让商品添加到购物车,用

12、户才能购置商品。4)用户登录:登录使用的Redis-Sessio技术实现的单点登录,即在一个工程登录后其他工程无需登录。5)Solr全文搜索引擎:用基于Lucene开发的Solr作为搜索引擎。6)购物车:基于Cookie-Jsessioni拟的Cookie-RediSJ展用户购物信息的操作。论文组织构造第一章:阐述了商城工程研究的背景与意义以及论文的组织构造第二章:介绍了在商城工程中用到的JavaWEB技术以及开发工具以及Eclipse中比拟好的插件的用法。第三章:介绍了该系统的根本功能需求以及业务流程第四章:实现对ssm框架的整合。对商城主要功能模块的时间第五章:对网上商城的前台后台进展一些

13、数据测试保证其强健性,稳定性。第六章:总结商城开发过程中用到的问题,分析优势与缺乏,明确下一步的工作商城系统开发技术及工具介绍商城开发的核心技术Jsonp简介跨域的根本概念:不同效劳器或者同一个效劳器不同的端口号他们之间进展通信这就叫做跨域在商城工程中单点登录要实现在一个地方登录其他地方不用再重新登录,在这个地方需要用到跨域,在JSP页面使用跨域要用到JsonpJsonp:Json血是JSON的特殊使用法.因为Ajax无法接收到跨域的Json类型数据,Jsonp让跨域时返回的是一个脚本文件.脚本文件中包含了,回调函数及JSON数据.JSONP的使用步骤:客户端需要重点设置以下三个属性:1)da

14、taType:jsonp,响应结果类型2)jsonp:callback:请求时传递回调方法名的参数名3)jsonpCallback:abc传递过去的回调方法名代码例如如下:$.ajax(url:localhost:8081/demo,dataType:jsonp,jsonp:callback,jsonpCallback:abc,type:POST,success:function(data)alert(data.a+匿名方式+data.b););效劳器端使用的是由Spring封装的MappingJacksonValu的返回jsonp需要的数据格式。他要注意的是几个属性produces:stri

15、ng瑕:置响应头中Content-Type响应容类型.代码例如如下:RequestMapping(value=demo,produces=MediaTypAeP.PLICATION_JSON_UTF8_VALUE)ResponseBodypublicMappingJacksonValueshow(Stringcallback)Mapmap=newHashMap();map.put(a,a1);map.put(b,b1);MappingJacksonValuemjv=newMappingJacksonValue(map);mjv.setJsonpFunction(callback);return

16、mjv;Client简介分布式工程中不同子工程之间进展信息传输需要跨域,而Client是用Java代码的方式进展的跨域信息交流,下面介绍一下Client。协议应该是互联网中最重要的协议。持续增长的WEB效劳、互联网的家用电器等都在继承并拓展着协议,向着浏览器之外的方向开展。虽然JDK中的J包中提供了一些根本的方法,通过协议来访问网络资源,但是大多数场景下,它都不够灵活和强大。Cilent致力于填补这个空白,它可以提供有效的、最新的、功能丰富的包来实现客户端。为了拓展,client即支持根本的协议,还支持-aware客户端程序,如WEB浏览器,WebServer客户端,以及利用OR拓展协议的分布

17、式系统。Client的围/特性是一个基于core的客户端传输类库基于传统的阻塞IO容无关Client不能做的事情Client不是浏览器,它是一个客户端协议传输类库。Client被用来发送和承受消息。Client不会处理消息的容,不会进展JavaScript解析,不会关心contenttype,如果没有明确设置,ClientT也不会对请求进展格式化、重定向URL,或者其他任何和消息传输相关的功能。代码例如如下:POST请求CloseableClientClient=ClientscreateDefault);Postpost=newPost(localhost:8081/demo1);Listp

18、arams=newArrayList();params.add(newBasiameValuePair(name,);params.add(newBasiameValuePair(age,15);post.setEntity(newUrlEncodedFormEntity(params,utf-8);CloseableResponseresponse=Client.execute(post);Stringresult=EntityUtilstoString(response.getEntity();response.close();Client.close();GET请求:publicvoid

19、doGetWithParam()throwsExceptionCloseableClientClient=ClientscreateDefault);URIBuilderuriBuilder=newURIBuilder(.sogou./web);uriBuilder.addParameter(query,花千骨);Getget=newGet(uriBuilder.build();CloseableResponseresponse=Client.execute(get);intstatusCode=response.getStatusLine().getStatusCode();Entityen

20、tity=response.getEntity();Stringstring=EntityUtils.toString(entity,utf-8);response.close();Client.close();Cookie简介Cookie概念:由效劳器端产生,存放于客户端浏览器的文本文件。Cookie原理:1)在效劳器端实例化Cookie对象,里面只能存放字符串容(Cookie尽量不要存放中文)。2)设置Cookie的有效时间和作用域和有效路径。3)伴随重定向,随着响应对象响应给客户端浏览器。4)浏览器接收到Cookie容进展I/O操作,把Cookie存放与本地某个Cookie特定文件夹中。

21、5)当用户在次发送请求时,只要能获取到某个或某些Cookie,会由浏览器帮助自动携带Cookie发送给效劳端。效劳器端例如代码如下:Cookiec=newCookie(test,123);c.setMaxAge(10);c.setDomain(.ego.;)c.setPath(/cookie/page);res.addCookie(c);res.sendRedirect(page/index.jsp);客户端代码例如如下:%Cookiecs=request.getCookies();if(cs!=null)for(Cookiec:cs)out.println(c.getName()+c.get

22、Value()+);%Session介SessionIM十么?由效劳器端产生,存放于客户端浏览器的文本文件。Session原理:在效劳器端实例化Cookie对象,里面只能存放字符串容(Cookie尽量不要存放中文)。设置Cookie的有效时间和作用域和有效路径。伴随重定向,随着响应对象响应给客户端浏览器。4)浏览器接收到Cookie容进展I/O操作,把Cookie存放与本地某个Cookie特定文件夹中。5)当用户在次发送请求时,只要能获取到某个或某些Cookie会由浏览器帮助自动携带Cookie发送给效劳端。Solr简介Solr介绍1作用:一个搜索引擎。SOLR实际是一个WEB工程。优点:搜索

23、容高亮。对搜索关键字的突出显示。搜索引擎方案:目前在国希望实现全文搜索常用解决方案。1)使用Baidu,Google提供的API2)使用基于Apache提供的Lucene搜索引擎实现。Solr运行原理:Solr实际上是基于lucceen开发的,需要通过Solr对外提供的接口,访问Solr工程.Solr接收请求,交由SolrRequestHandle处理请求.拆分请求容为n多个词条(一句话拆分成多段).根据词条容,索引整个Solr中容,最终相应给用户一个XML格式的结果,也可以是备用结果。索引介绍:1)查询时,从头查询到结果一行一行的查询过程叫做顺序查询。2)索引:建立容和索引容之间关系,通过找

24、到索引容快速定位到具体容的过程就是索引查询(新华字典目录.)。3)solr基于反向索引进展查询的.建立索引和容之间关系,通过索引查找容的过程称为反向索引。SSM框架技术框架技术概述框架是一种通用的半成品的软件,SSM用了MVC的设计模式可以使程序易维护扩展,使程序员之间的分工比拟明确,使业务逻辑与视图进展别离,简化了程序员的开发提高了工作效率,如图2-1就是框架技术在MVC三层模型所代表的角色。AM图2-1框架在MVC中的角色SpringMVC框架Springmvc运行流程图如图2-2SpringOl.HLftfflKijpQUHHfelWbidi-叫押叫时他立XjjiLftlX.幽Camsl

25、IUs91Aho】E角尚.X看比,KF币才流,用恒财Jfi人的-JSHE鹏虹iQflUHW)1J5K1尊便EWl3W置awit提3t5-re-WSJiPi-B小皿公二而1nmid47uasuYa.*.璃寸工工册m先也mto止Llz9!Lzsna-ija-vazi=Li.i#wa虏修才皿珈im吧0如与二gk*wis加她叩如和*三驷内加成Stnra调=pEi7Gaijwas36誓iifflili9r34工罐蚓币;外值理宝新照x酹*,应B*手*循1m*阿中f*正3fcaifr-DS-M21:17:*加宁Tfl力孕晅fr-wrBjFal工Ji-aiqn!Skta/一.f.-sa,-i,hir_图4-1

26、商城后台页面操作展示Service层代码如下其中使用到了pagehel建个分页插件privateTbItemParamMapperitemParamMapper;publicEasyUIDataGridshowTbItem(intpage,introws)EasyUIDataGriddataGrid=newEasyUIDataGrid();PageHelper.startPage(page,rows);Listlist=tbItemMapper.selectByExample(newTbItemExample();PageInfoinfo=newPageInfo(list);dataGrid.

27、setRows(info.getList();dataGrid.setTotal(info.getTotal();returndataGrid;Controller层代码如下RequestMapping(item/list)ResponseBodypublicEasyUIDataGridshow(intpage,introws)returnthis.tbItemService.showTbItem(page,rows);商品的上架,下架,编辑,删除写出勒华南岳达H羊痂圈际餐丁H司匚ME居羊肉扉苒晒叶于杳曰委立斤精EE学妙*升靠明长春钊*日好空两日明T41S31三:抬unIR10修隹量手里*:7

28、里G弟M通牙彳1gM+男叫千忸MLaH&Cfl嘉:皿算!州近鼻113手:31图4-2商城后台商品的增删,下,上架展示Service层代码如下OverridepublicvoidupStatus(Stringids,bytestatus)throwsExceptionTbItemrecord=newTbItem();Listlist=ItemSpiltUtil.idSplit(ids);for(Longlong1:list)record.setStatus(status);record.setId(long1);tbItemMapper.updateByPrimaryKeySelective(r

29、ecord);Controller层代码其中使用到了封装的思想,将同样的代码封装起来,因为Service层的代码都一样所以使用了一个来判断简化了代码的开发。是程序看起来更加强健。RequestMapping(rest/item/type)ResponseBodypublicEgoResultupdataStatus(PathVariableStringtype,Stringids)EgoResultegoResult=newEgoResult();Bytestatus=null;if(delete.equalsIgnoreCase(type)status=(byte)3;elseif(inst

30、ock.equalsIgnoreCase(type)status=(byte)2;elseif(reshelf.equalsIgnoreCase(type)status=(byte)1;trytbItemService.upStatus(ids,status);egoResult.setStatus(200);catch(Exceptione)e.printStackTrace();egoResult.setStatus(400);returnegoResult;商城后台容管理实现商城容管理对容的增加,重命名如图4-3所示amr* n”FamASCV* jBB treti.国iE口.A啊8”T

31、B7Mrm4ea,m_ t rtaiHi肝帚ata1SJUM hU-J1三 口 ::1;总MLfr-Ur U 匚 4七0a4aMmftlu玲由mw U a,对,百事UAJLukliirr;l3据,1华力II lIT: M忤IM晒MituUugmJiHED.|.quuiXairU-lH HrllH3KrL2-3S 31.3: Bfl m 彳 1彻 m - a图4-3商城后台容管理Service层代码ResourceTbContentCategoryMappertbContentCategoryMapper;OverridepublicListselById(longid)TbContentCat

32、egoryExampleexample=newTbContentCategoryExample();example.createCHteria().andParentIdEqualTo(id).andStatusEqualTo(1;Listlist=tbContentCategoryMapper.selectByExample(example);ListeasyUiTreeList=newArrayList();for(TbContentCategorytbContentCategory:list)EasyUiTreeea=newEasyUiTree();ea.setId(tbContentC

33、ategory.getId();ea.setText(tbContentCategory.getName();ea.setState(tbContentCategory.getIsParent()?closed:open);easyUiTreeList.add(ea);returneasyUiTreeList;OverridepublicEgoResultinsertByid(longparentId,Stringname)EgoResultegoResult=newEgoResult();TbContentCategorytbContentCategory=newTbContentCateg

34、ory。;tbContentCategory.setCreated(newDate();tbContentCategory.setId(IDUtils.genItemId();tbContentCategory.setIsParent(false);tbContentCategory.setName(name);tbContentCategory.setParentId(parentId);tbContentCategory.setSortOrder(1);tbContentCategory.setStatus(1);tbContentCategory.setUpdated(newDate()

35、;TbContentCategoryExampleexample=newTbContentCategoryExample();example.createCriteria().andNameEqualTo(name);intcount=this.tbContentCategoryMapper.countByExample(example);if(count0)TbContentCategoryparent=newTbContentCategory();parent.setId(parentId);parent.setIsParent(true);intre=this.tbContentCate

36、goryMapper.updateByPrimaryKeySelective(parent);if(re0)egoResult.setStatus(200);elseegoResult.setStatus(400);elseegoResult.setStatus(400);elseegoResult.setStatus(400);returnegoResult;商城前台单点登录的实现单点登录原理简述:要想实现Cookie-Redis总得有个Cookie吧,所以第一步要先创立一个Cookie,然后Cookie起个名字,因为我们要判断浏览器端是否存在这个cookie所以说需要专门写一个js这个js

37、是前台写的,跟后续其他的需要登录的网页相关联,其他的网页要引入这个js,当乎U断Cookie有了之后就会将这个js就会获取第一个js里面的Cookie值,之后就可以从Redis查询数据了Cookie的值为UUid,然后将这个UUid作为key存储到Redis中他的值为用户信息,同时设置Redis的失效时间。每一个需要用户信息的页面都要有两个js上面提到的,第一个js要判断是否存在这个Cookie,第二个js是先获取Cookie里面的值然后发送一个Jsonp请求,从Redis里面获取,然后进展相应的展现。Rdis-Cookie就是对Cookie-Jsessi酌模拟。单点登录service层代码如

38、下ResourceprivateTbUserMapperusermapper;ResourceprivateJedisDaodao;Override当用户登录的时候要创立Cookie存值为UUid,UUid将最为Redis的key存User对象Usr对象经过工具类转换PublicEgoResultlogin(TbUsertb,ServletRequestreq,ServletResponseres)tb.setPassword(DigestUtils.md5DigestAsHex(tb.getPassword().getBytes();EgoResultego=newEgoResult();T

39、bUserExampleexample=newTbUserExample();example.createCriteria().andUsernameEqualTo(tb.getUsername().andPasswordEqualTo(tb.getPassword();Listlist=usermapper.selectByExample(example);if(list!=null&list.size()0)Stringuuid=UUID.randomUUID().toString();dao.set(user-+uuid,JsonUtils.objectToJson(list.get(0

40、);System.out.println(list.get(0);dao.expire(user-+uuid,30*60);CookieUtils.setCookie(req,res,TT_TOKEN,uuid,30*60);ego.setStatus(200);ego.setData(uuid);elseego.setStatus(400);returnego;req,publicEgoResultgetTokenResult(Stringtoken,ServletRequestServletResponseres)EgoResultego=newEgoResult();Stringstri

41、ng=dao.get(user-+token);ego.setStatus(200);ego.setData(JsonUtils.jsonToPojo(string,TbUser.class);dao.expire(user-+token,30*60);CookieUtils.setCookie(req,res,TT_TOKEN,token,30*60);returnego;注册页面注册成功之后会跳转到登录页面而登录页面登录地址的参数将带有此次相应结果的rfferer参数就可以成功跳回到登录之前的页面RequestMapping(user/showRegister)publicStringre

42、sigin(RequestHeader(name=RefereL)Stringreferer,Modelmodel)model.addAttribute(url,referer);returnregister;RequestMapping(user/check/countent/type)ResponseBodypublicEgoResultcheck(PathVariableStringcountent,PathVariableinttype)returnuserService.check(countent,type);RequestMapping(/user/register)Respon

43、seBodypublicEgoResultregister(TbUseruser)returnuserService.register(user);商城前台solr全文搜索的实现商城前台使用的是solr全文solr引擎Solr管理集群的构造图如图4-5JLIQJtartawajBvpvrbnUIhiwd图4-5商城solr集群结构造图主要步骤以及代码如下在使用之前要对Solr进展初始化,在初始化之后Solr中就会建立索引的一些联系。当用户查询数据的时候会直接在初始化的文件中对数据进展搜索Service层代码如下ResourceprivateSolrMappermapper;Value($zkH

44、ost)privateStringzkHost;OverridepublicStringinitSolr()throwsSolrServerException,IOExceptionListlist=mapper.seAll();CloudSolrServerserver=newCloudSolrServer(zkHost);server.setDefaultCollection(collection1);for(ItemSearchitemSearch:list)SolrInputDocumentdoc=newSolrInputDocument();doc.addField(id,itemS

45、earch.getId();doc.addField(item_category_name,itemSearch.getItem_category_name();doc.addField(item_desc,itemSearch.getItem_desc();doc.addField(item_image,itemSearch.getItem_image();doc.addField(item_price,itemSearch.getItem_price();doc.addField(item_sell_point,itemSearch.getItem_sell_point();doc.add

46、Field(item_title,itemSearch.getItem_title();server.add(doc);server.mit();returnok;publicSearchResultselByQ(Stringq,intpage,introws)throwsSolrServerExceptionSearchResultsear=newSearchResult();CloudSolrServerserver=newCloudSolrServer(zkHost);server.setDefaultCoection(collection1);SolrQueryquery=newSol

47、rQuery();query.setQuery(item_keywords:+q);query.setStart(1)*rows);query.setRows(rows);query.setHighlight(true);query.addHighlightField(item_titleitem_sell_point);query.setHighlightSimplePre();query.setHighlightSimplePost();QueryResponseresponse=server.query(query);SolrDocumentListlist=response.getRe

48、sults();longcount=list.getNumFound();sear.setTotalPages(count%rows=0?count/rows:count/rows+1);sear.setPage(page);ListlistResult=newArrayList();MapString,MapString,Listmap=response.getHighlighting();for(SolrDocumentdoc:list)ItemSearchis=newItemSearch();is.setId(Long.parseLong(doc.get(id).toString();i

49、s.setItem_category_name(doc.get(item_category_name).toString();is.setItem_image(doc.get(item_image).toString()=null?doc.get(item_image).toString().split(,)0);is.setItem_price(Long.parseLong(doc.get(item_price).toString()returnsear;5.商城系统运行结果商城后台运行结果商城前台新增产品管理员新增商品:当用户想在数据库里面增加商品的时候有几个要点要注意1)管理员新增商品的

50、时候有商品类目这个商品类目是按照一个树状构造展示的是由EasyUI框架提供的向数据库里面查询数据。2)商品的一个图片上传是用的vsftpt代理效劳器进展操作的我们实际上上传的图片最终存储的位置是在一个远程调用的效劳器上存储的3)新增商品的时候用到了一个数据库的模板设计模式。他的思想是两个表之间自动建立联系交给中间的一个代理做模板的处理具体操作如图5-1所示WWU,”:*Q|(Dmiwt白电/L*V9BMHHR*:OfEmQimUKMA-JmIHWHOAHBM*|nir/5苓RTOrMAHKiTMOs*in=ftiWZ-植再(:口 岸艰电!修便直二四1*1整gg鼻用脑静晶也七W坂:却X飒*B:纪

51、&c皿匐/和3$)事414通星2E5一上“HHb7-a-flhJFHi3”。FJ,*9户图5-1增加商品的操作当我们在进展如上操作完毕之后,利用SQL工具的查询语句直接在数据库里面进展一个查询操作可以得到如下结果,由此可见上述操作没有问题id1illesd_podfa;三三千手七%j印yiT-u理a/k/w事_jr-图5-3商品容的添加如果5-4当进展了如上图的增加操作的时候数据库里面已经有了刚刚添加的容,由此可证明容管理中的增加是没有问题的。篇幅所限制删除,修改就不在这里继续演示了RZ舁生踪1,斤*31G人jOH3勺“kt以免141kHlitMe声”ufl同1ym0m1IT*e3BI30加U

52、fc平忏rha中M92JLa&1N孙15-994201427D1立囚肥心塔占21911441%印UGKfl-W=ahttp/Tl12即1*815WUQ1427DS.pft9httpj/Viu2DWWWHTh-enhnp/flBjItAdh171VuMMU)pngE昨和时加40WI融穗Mllrn0第期而17ftHM疗M7&ImhnpWiF够677S5舲11ww-bad-TOTHWWWEHLehf*8http/n921触密i翻“*2的力级湖pnggp加一2nM堂的恰加加吃1担翻kl2肥视4Hg照if叩稣图5-4数据库中的容商城前台运行结果商城前台用户搜索在商城的用户搜素模块,当我们输入想要购置的物

53、品的时候如图5-5,请求会首先经过web.xml然后再通过远程调用请求Solr这个WEB工程中的一个文件,然后对数据进展一个查询操作,这点要注意的是这次查询将不会再数据库里面进展一个查询操作。图5-5搜索页面当我们输入要搜索的物品之后,在Solr文件里面经过查询之后,会将结果返回到WEB页面WEB页面里面的相关代码会将查询的结果进展一个分页的操作然后会将查询结果的第一页进展具体结果显示如图5-6199 CJO图5-6搜索结果页面商城前台用户注册当用户进展注册的时候将会有几个判断条件1)用户的手机号是否已经注册如果没有注册那么会提示注册成功如图5-8如果用户已经注册过将会提示用户已经注册过该手机如图5-72)当用户的密码不一致时提示用户的密码不一致3)当用户的密码与要求的密码不一致或者密码过短的时候也会提示注册失败图5-7用户注册失败个人用户Qifccdlboit8084Sd/6hovvRAQ|lfftAf足白豆一下.幽网4T3tmatffi,-第一蒙用.一locbo:8094显下:昂购网欢迎注f司户主茬G,他当辛二世=壬:二71尸1(1他三N#二三斤匚田二三封.立即注册图5-8用户注册成功商城用户购物车商城购物车可以说是整个业务的最核心之一也不为过,因为商城存在的目的就是买

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论