![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringCloud京东整站
从零开始搭建的基于微服务的京东整站商城系统
Mof_Rehoboam
毕业于北京邮电大学计算机信息管理专业。先后在移动互联网、物联网、通信等领域摸爬滚打近7年,从事过开发,也担任过产品经理。目前是全栈Java开发工程师,同时也是《学习计划》、《全名垃圾分类》等APP的作者。
展开
-
10.从零开始搭建基于SpringCloud的京东整站_内容管理微服务_使用RabbitMQ实现商品秒杀
数据准备在后台添加3个秒杀商品,每个秒杀数量为1:商品1:商品2:商品3:在添加商品的同时,将库存记录到Redis: public SysResult addSecKill(Seckill seckill) { try { secKillMapper.add(seckill); //将商品库存在Redis进行记录 redisTemplate.opsForValue().set("shop"+seckill.getId(),secki原创 2020-07-08 21:01:26 · 228 阅读 · 0 评论 -
9.从零开始搭建基于SpringCloud的京东整站_内容管理微服务_使用Redis集群实现商品缓存
本次目标使用Redis集群实现商品缓存。在实际项目中,对于频繁从数据库获取的热门商品放入缓存,比如Redis或者其它第三方缓存应用,可以极大减少数据库的访问压力。实现过程在数据库中,增加商品是否缓存的字段。在后台商品管理中,添加是否缓存的选项:在添加商品的逻辑中,加入缓存机制:try { articleMapper.addArticle(article); //添加成功后,对信息进行缓存 if(article.getIfCache()==1){ Stri原创 2020-06-20 21:48:14 · 151 阅读 · 0 评论 -
8.从零开始搭建基于SpringCloud的京东整站_内容管理微服务_使用Elasticsearch实现商品搜索
本次目标后端:使用Elasticsearch实现商品搜索。前端:使用Vue对查询的商品列表进行展示。使用Elasticsearch实现商品搜索配置TransportClient客户端通过TransportClient发起对ES(Elasticsearch的简称)的索引创建、关键词查询等功能。1. 在工程的POM.xm文件中添加相关依赖Jar包。在父级工程中,添加TransportClient的版本管理:<!--Elasticsearch--><dependency>原创 2020-06-17 08:23:30 · 310 阅读 · 0 评论 -
7.从零开始搭建基于SpringCloud的京东整站_内容管理微服务_完成商品录入功能
本次目标1.创建内容管理微服务。2.通过内容管理微服务实现商品录入。3.使用文件管理微服务实现文件上传。PS:我这里只是做了简单实现,商品价格等细节内容还没有添加。因为这个项目主要目地是将各种优秀的技术进行应用,把整个系统每个细节都做出来也不太现实。本次实现商品录入主要是对之前第三节做的图片上传微服务进行整合,并且为后面的Elasticsearch技术的应用做铺垫。创建内容管理微服务pom依赖<?xml version="1.0" encoding="UTF-8"?><pr原创 2020-06-12 12:57:30 · 339 阅读 · 0 评论 -
6.从零开始搭建基于SpringCloud的京东整站_用户微服务_使用Vue完成注册页面前端功能
本次目标1.使用Vue完成表单数据的双向绑定。1.1 表单数据的绑定。1.2 验证码图片地址的动态绑定。2.使用axios插件完成ajax提交。使用Vue完成表单数据的双向绑定没有接触vue之前,在我所了解的前端JS库中,JQuery是我使用最顺手的一个。它对传统Js操作Dom元素的方式进行了进一步地封装,可以使开发者用更加简洁的代码实现同样的功能。但是仔细想想,无论操作dom元素方式变的多么简单,其本质上都是使用数据更新界面元素或者通过界面元素更新数据的手段。Vue就是在这样的背景下应用而原创 2020-06-10 11:04:05 · 316 阅读 · 0 评论 -
5.从零开始搭建基于SpringCloud的京东整站_用户微服务_登录状态保存
本次目标在传统的SpringBoot项目开发过程中,是将用户的登录状态保存在Session中的。但是基于微服务的项目各模块都是一个单独的SpringBoot项目,这时Session共享就是首要解决的问题。有一种思路,就是将Session在每个服务器中同步一份,但是这种方式有一种很明显的缺陷,就是数据冗余——每个服务器存在相同的数据。另外一种思路,就是将会话信息保存在第三方应用中,每个微服务都从这个第三方服务中设置和获取会话信息,这就用到了Redis技术。使用Redis实现Session的会话存储功能原创 2020-06-07 21:20:12 · 413 阅读 · 0 评论 -
4.从零开始搭建基于SpringCloud的京东整站_用户微服务_后台登录鉴权
本次目标实现后台登录鉴权功能。接口文档1.后台管理员登录页面访问地址:http://admin/pages/main/login.html2.接口描述js请求地址http://{ip:port}/user/adminLogin后台接收user/adminLogin请求方式POST请求参数String username;用户名String psw;密码String valicaod;验证码返回数据返回SysResult对象的json,其结构:Inte原创 2020-06-03 23:01:55 · 318 阅读 · 0 评论 -
3.从零开始搭建基于SpringCloud的京东整站_文件上传微服务
本次目标本次实现的目标:实现图片上传微服务。文件上传在很多项目和很多模块都要用到,所以将其单独作为一个微服务。如下图蓝色箭头所示:FileUploadMicroservice准备静态测试资源本次使用的是bootstrap-fileinput,文档地址:http://www.bootstrap-fileinput.com/bootstrap-fileinput 简介bootstrap-fileinput是一款非常优秀的HTML5文件上传插件,支持bootstrap 3.x 和4.x版本,具有非原创 2020-05-29 18:51:24 · 640 阅读 · 0 评论 -
2.从零开始搭建基于SpringCloud的京东整站_框架搭建
本次实现的目标整体项目框架的搭建。动静分离的基本实现,将JD的静态页面通过Nginx的配置实现访问。整体框架各模块名词解释src/main/resources/statics存放所有静态资源的的目录,为了后期打包方便,所以将静态资源放在了当前项目中。因为要使用前后端分离的模式开发整个工程,所有该目录可以放置在任何位置。SpringBootMicroservices它继承了SpringBoot父级依赖,本身依赖了org.springframework.cloud,后续所有的微服务都作为该原创 2020-05-28 08:33:21 · 372 阅读 · 0 评论 -
1.从零开始搭建基于SpringCloud的京东整站_项目简介
项目启动突然突发奇想,想把京东整站围绕SpringCloud框架,其间穿插SpringBoot、Mybatis、Vue.js、Nginx、Radis、Elasticsearch等技术将其从无到有创建出来。虽然预感到会遇到很多意想不到的困难,但还是决定尝试一下,看到底自己能坚持多久。基于SpringCloud框架技术本项目使用 SpringbSpringCloud 框架进行系统设计与开发,让微服务思想贯穿整个项目。为日后更多的高并发、高可用的系统开发提供相关开发经验。由浅入深以需求引导,接口约束、原创 2020-05-26 21:17:13 · 949 阅读 · 0 评论