基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx

上传人:聆听****声音 文档编号:850766 上传时间:2023-04-29 格式:DOCX 页数:61 大小:999.31KB
下载 相关 举报
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第1页
第1页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第2页
第2页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第3页
第3页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第4页
第4页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第5页
第5页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第6页
第6页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第7页
第7页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第8页
第8页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第9页
第9页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第10页
第10页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第11页
第11页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第12页
第12页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第13页
第13页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第14页
第14页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第15页
第15页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第16页
第16页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第17页
第17页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第18页
第18页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第19页
第19页 / 共61页
基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx_第20页
第20页 / 共61页
亲,该文档总共61页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx

《基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx(61页珍藏版)》请在冰点文库上搜索。

基于java的网上商城设计与实现--毕业论文(设计)Word文档下载推荐.docx

1.1.1.研究的背景 1

1.1.2.研究的意义 1

1.2.研究内容 1

1.3.论文组织结构 2

2.商城系统开发技术及工具介绍 3

2.1.商城开发的核心技术 3

2.1.1.Jsonp简介 3

2.1.2.HttpClient简介 4

2.1.3.Cookie简介 5

2.1.4.Session简介 6

2.1.5.Solr简介 7

2.2.SSM框架技术 8

2.2.1.框架技术概述 8

2.2.2.SpringMVC框架 9

2.2.3.Mybatis框架 10

2.2.4.Spring框架 11

2.3.商城开发工具 11

2.3.1.Ecplipse及其插件 11

2.3.2.Tomcat服务器 12

2.3.3.MySQL数据库 12

2.3.4.Redis数据库 12

3.商城系统项目需求分析 14

3.1.目标 14

3.2.商城业务流程图 14

3.2.1.商城后台业务流程图 14

3.2.2.商城前台务流程图 15

4.商城系统设计及实现 17

4.1.商城总体开发架构 17

4.2.商城框架实现 18

4.2.1.Spring整合SpringMVC 18

4.2.2.Spring整合Mybatis 19

4.2.3.Spring整合Jedis 20

4.3.商城主要功能模块实现 21

4.3.1.商城后台商品管理实现 21

4.3.2.商城后台内容管理实现 24

4.3.3.商城前台单点登录的实现 26

4.3.4.商城前台solr全文搜索的实现 29

5.商城系统运行结果 32

5.1.商城后台运行结果 32

5.1.1.商城前台新增产品 32

5.1.2.商城前台商品内容管理 33

5.2.商城前台运行结果 34

5.2.1.商城前台用户搜索 34

5.2.2.商城前台用户注册 35

5.2.3.商城用户购物车 36

6.总结以及展望 38

参考文献 39

致谢 40

1.绪论

1.1.研究的背景和意义

1.1.1.研究的背景

在衣食等购买方面,传统的方式是我们需要花费时间到固定的地方挑选,假设购买的东西多还需要额外的花费去运输。

但是随着中国经济的快速发展,人们对物质生活要求的提升,工作时间的不充足,购买量偏大这些问题往往会使我们感到厌烦。

如何改善人们的购物体验,如何使商家与顾客实现共赢,人们一直在尝试各种办法解决这个问题。

随着互联网技术的发展,网络与人们的日常生活也产生了千丝万缕的关系。

信息技术也改变了人们的思维方式,现在越来越多的人通过互联网来完成自己想做的事情。

随着数据库,计算机硬件,存储技术的发展,信息技术已经覆盖到日常生活的各个方面,现在人们已经离不开互联网了。

网上购物商城就是在这种大趋势的推动下产生的。

1.1.2.研究的意义

在衣食等方面网上购物商城充当着一个重要的角色,在以往我们需要花费时间去挑选去到固定的地方去买。

而现在我们只需要动动我们的手指很多东西就可以送货上门。

可以证明商城很火爆的一个列子是天猫双十一。

可以说是开辟了网上购物的一个春天,成交量超过千亿,可以说明现在互联网购物商城方面的一个发展趋势。

1.2.研究内容

本系统采用SSM搭建的分布式项目,使用Maven管理Jar使用Git作为版本的管理工具,由此将项目分为如下几个模块:

1)后台管理:

包括管理员对商品的增删改查,对商品规格参数的增删改查。

2)主页展示:

类似京东的主页面,让商品分类目展示。

53

3)用户注册:

用户登录成功之后才能让商品添加到购物车,用户才能购买商

品。

4)用户登录:

登录使用的Redis-Session技术实现的单点登录,即在一个项

目登录后其他项目无需登录。

5)Solr全文搜索引擎:

用基于Lucene开发的Solr作为搜索引擎。

6)购物车:

基于Cookie-Jsession模拟的Cookie-Redis进行用户购物信息的操作。

1.3.论文组织结构

第1章:

阐述了商城项目研究的背景与意义以及论文的组织结构

第2章:

介绍了在商城项目中用到的JavaWEB技术以及开发工具以及Eclipse

中比较好的插件的用法。

第3章:

介绍了该系统的基本功能需求以及业务流程

第4章:

实现对ssm框架的整合。

对商城主要功能模块的时间

第5章:

对网上商城的前台后台进行一些数据测试保证其健壮性,稳定性。

第6章:

总结商城开发过程中用到的问题,分析优势与不足,明确下一步的工作内容。

2.商城系统开发技术及工具介绍

2.1.商城开发的核心技术

2.1.1.Jsonp简介

跨域的基本概念:

不同服务器或者同一个服务器不同的端口号他们之间进行通信这就叫做跨域

在商城项目中单点登录要实现在一个地方登录其他地方不用再重新登录,在这个地方需要用到跨域,在JSP页面使用跨域要用到Jsonp。

Jsonp:

Jsonp就是JSON的特殊使用法.因为Ajax无法接收到跨域的Json类型数据,Jsonp让跨域时返回的是一个脚本文件.脚本文件中包含了,回调函数及JSON数据.

JSONP的使用步骤:

客户端需要重点设置以下三个属性:

1)dataType:

’jsonp’ ,响应结果类型2)jsonp:

’callback:

请求时传递回调方法名的参数名3)jsonpCallback:

’abc,传递过去的回调方法名

代码示例如下:

$.ajax({

url:

'

http:

//localhost:

8081/demo'

dataType:

jsonp'

jsonp:

callback'

jsonpCallback:

abc'

type:

POST'

success:

function(data){

alert(data.a+"

"

+"

匿名方式"

+data.b);

}});

服务器端使用的是由Spring封装的MappingJacksonValue它返回jsonp需要的数据格式。

他要注意的是几个属性produces:

string[],设置响应头中Content-Type,响应内容类型.代码示例如下:

@RequestMapping(value="

demo"

produces={MediaType.APPLICATION_JSON_UTF8_VALUE})

@ResponseBody

publicMappingJacksonValueshow(Stringcallback){Map<

String,String>

map=newHashMap<

>

();

map.put("

a"

"

a1"

);

map.put("

b"

b1"

MappingJacksonValuemjv=newMappingJacksonValue(map);

mjv.setJsonpFunction(callback);

returnmjv;

2.1.2.HttpClient简介

分布式项目中不同子项目之间进行信息传输需要跨域,而HttpClient是用

Java代码的方式进行的跨域信息交流,下面介绍一下HttpClient。

HTTP协议应该是互联网中最重要的协议。

持续增长的WEB服务、互联网的家用电器等都在继承并拓展着Http协议,向着浏览器之外的方向发展。

虽然JDK中的J包中提供了一些基本的方法,通过Http协议来访问网络资源,但是大多数场景下,它都不够灵活和强大。

HttpCilent致力于填补这个空白,它可以提供有效的、最新的、功能丰富的包来实现Http客户端。

为了拓展,Httpclient即支持基本的Http协议,还支持Http-aware客户端程序,如WEB浏览器,WebServer客户端,以及利用OR拓展Http协议的分布式系统。

1)HttpClient的范围/特性

是一个基于Httpcore的客户端Http传输类库基于传统的(阻塞)IO内容无关

2)HttpClient不能做的事情

HttpClient 不是浏览器,它是一个客户端 HTTP 协议传输类库。

HttpClient被用来发送和接受HTTP消息。

HttpClient不会处理HTTP消息的内容,不会进行JavaScript解析,不会关心contenttype,如果没有明确设置,HttpClient T 也不会对请求进行格式化、重定向 URL,或者其他任何和 Http消息传输相关的功能。

POST请求

CloseableHttpClienthttpClient=HttpClients.createDefault();

HttpPostpost=newHttpPost("

8081/demo1"

List<

NameValuePair>

params=newArrayList<

params.add(newBasicNameValuePair("

name"

李四"

));

age"

"

15"

post.setEntity(newUrlEncodedFormEntity(params,"

utf-8"

CloseableHttpResponseresponse=httpClient.execute(post);

Stringresult=EntityUtils.toString(response.getEntity());

response.close();

httpClient.close();

GET请求:

publicvoiddoGetWithParam()throwsException{CloseableHttpClienthttpClient=HttpClients.createDefault();

URIBuilderuriBuilder=newURIBuilder("

uriBuilder.addParameter("

query"

花千骨"

HttpGetget=newHttpGet(uriBuilder.build());

CloseableHttpResponseresponse=httpClient.execute(get);

intstatusCode=response.getStatusLine().getStatusCode();

HttpEntityentity=response.getEntity();

Stringstring=EntityUtils.toString(entity,"

}

2.1.3.Cookie简介

Cookie概念:

由服务器端产生,存放于客户端浏览器的文本文件。

Cookie原理:

1)在服务器端实例化Cookie对象,里面只能存放字符串内容(Cookie尽量不要存放中文)。

2)设置Cookie的有效时间和作用域和有效路径。

3)伴随重定向,随着响应对象响应给客户端浏览器。

4)浏览器接收到Cookie内容进行I/O操作,把Cookie存放与本地某个Cookie特定文件夹中。

5)当用户在次发送请求时,只要能获取到某个或某些Cookie,会由浏览器帮助自动携带Cookie发送给服务端。

服务器端示例代码如下:

Cookiec=newCookie("

test"

123"

c.setMaxAge(10);

c.setDomain("

"

);

c.setPath("

/cookie/page"

res.addCookie(c);

res.sendRedirect("

page/index.jsp"

客户端代码示例如下:

<

%

Cookie[]cs= request.getCookies();

if(cs!

=null){

for(Cookiec:

cs){

out.println(c.getName()+"

+c.getValue()+"

br/>

%>

2.1.4.Session简介

Session是什么?

Session原理:

3)伴随重定向,随着响应对象响应给客户端浏览器。

4)浏览器接收到Cookie内容进行I/O操作,把Cookie存放与本地某个Cookie特定文件夹中。

5)当用户在次发送请求时,只要能获取到某个或某些Cookie,会由浏览器帮助自动携带Cookie发送给服务端。

2.1.5.Solr简介

Solr介绍

1)作用:

一个搜索引擎。

2)SOLR实际是一个WEB项目。

3)优点:

搜索内容高亮。

对搜索关键字的突出显示。

搜索引擎方案:

目前在国内希望实现全文搜索常用解决方案。

1)使用Baidu,Google提供的API

2)使用基于Apache提供的Lucene搜索引擎实现。

Solr运行原理:

Solr实际上是基于lucceen开发的,需要通过Solr对外提供的接口,访

问Solr项目.Solr接收请求,交由SolrRequestHandler,处理请求.拆分请求内容为n多个词条(一句话拆分成多段).根据词条内容,索引整个Solr中内容,最终相应给用户一个XML格式的结果,也可以是备用结果。

索引介绍:

1)查询时,从头查询到结果一行一行的查询过程叫做顺序查询。

2)索引:

建立内容和索引内容之间关系,通过找到索引内容快速定位到具体内容的过程就是索引查询(新华字典目录.)。

3)solr基于反向索引进行查询的.建立索引和内容之间关系,通过索引查找内容的过程称为反向索引。

2.2.SSM框架技术

2.2.1.框架技术概述

框架是一种通用的半成品的软件,SSM用了MVC的设计模式可以使程序易维护扩展,使程序员之间的分工比较明确,使业务逻辑与视图进行分离,简化了程序员的开发提高了工作效率,如图2-1就是框架技术在MVC三层模型所代表的角色。

图2-1框架在MVC中的角色

2.2.2.SpringMVC框架

Springmvc运行流程图如图2-2

图2-2SpringMVC执行时序图

Springmvc运行原理:

在编程中都是以spring-webmvc.jar形式存在.SpringMVC是基于front设计模式研发出来的必须有入口地址,地址是

DispatcherServlet。

DispatcherServlet也是一个Servlet,在SpringMVC 中ServletAPI被完整的支持.由于是一个MVC框架,所以核心是控制器.大部分执行流程都是在控制器前后完成的。

具体执行流程为:

图2-3MYBATIS的执行流程

当用户发送请求后被DispatcherSevlet进行分发,然后转交给HandlerMapping进行验证格式是否合法,如果不合法报异常,如果合法向下传递交给HandlerAdapter准备调用某个Controller,Controller在进入之前一般都需要执行HandlerInterceptor拦截器的preHandle()方法,判断是否可以调用Controller.如果可以调用才能进入Controller,当Controller执行完成后再次进入拦截的postHandle验证传递内容是否合法,如果合法交给ViewResovler视图解析器调用具体的View视图资源.调用成功后再次进入拦截器的afterCompletion做最后验证,如果一切正确,响应给客户端.

到此,SpirngMVC执行结束.

2.2.3.Mybatis框架

Mybatis运行流程图如图2-3

图2-3Mybatis的执行流程

Mybatis是持久层框架,内部封装的JDBC,不依赖于SERVLET容器在测试阶段使用比较方便。

它的运行原理如下:

运行原理就是程序执行过程,平时编写代码时只需要把配置文件转换为流后给交SqlSessionFactoryBuilder就会产生SqlSessionFactory,但实际上底层是这样实现的.实际上把配置文件流交由XMLConfigBuilder进行解析,解析后把所有配置信息封装到Configuration中,再把Configuration传递给DefaultSqlSession

-Factory,并实例化这个类在源码可以看出DefaultSqlSessionFactory是SqlSessionFactory的实现类,所以这个时候就产生了SqlSessionFactory接口的实例..需要openSes

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2