实践项目
花开半夏丶丿
这个作者很懒,什么都没留下…
展开
-
Java项目 (SpringBoot+SpringCloud) 十次方:前端(六) 网站前台-登陆与用户中心
1 用户注册一.页面构建创建pages/login.vue二.获取验证码模拟数据与API 将user.yml 导入easymock 修改easy-mock 数据 url: /user/user/sendsms/{mobile} method:put 编写API 创建api/user.js 调用API 修改pages/login.vue脚本部分 修改p...原创 2019-10-20 16:41:23 · 737 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:前端(五) 网站前台-活动与招聘
1 服务端渲染技术NUXT一.什么是服务端渲染服务端渲染又称SSR (Server Side Render)是在服务端完成页面的内容,而不是在客户端通过AJAX获取数据。 与传统 SPA(Single-Page Application - 单页应用程序)相比,服务器端渲染(SSR)的优势主要在于:更好的 SEO,由于搜索引擎爬虫抓取工具可以直接查看完全渲染的页面。二.什么是NUXT...原创 2019-10-20 15:14:19 · 421 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:前端(四) 路由与状态管理
1 路由vue-router一.什么是vue-routervue-router就是vue官方提供的一个路由框架。使用 Vue.js ,我们已经可以通过组合组件来组成应用程序,当你要把 vue-router 添加进来,我们需要做的是,将组件(components)映射到路由(routes),然后告诉 vue-router 在哪里渲染它们。二.快速入门初始化工程 路由定义 src...原创 2019-10-19 12:26:21 · 344 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:前端(三) 使用ElementUI开发管理后台
1 管理后台搭建一.什么是ElementUIElement 饿了么前端出品的一套 Vue.js 后台组件库 官网: http://element.eleme.io/#/zh-CN二.脚手架快速搭建 官网上提供了非常基础的脚手架,如果我们使用官网的脚手架需要自己写很多代码比如登陆界面、主界面菜单等内容。 课程已经提供了功能完整的脚手架,我们可以拿过来在此基础上开发,这样可以极大...原创 2019-10-17 10:20:46 · 329 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:前端(二) API文档与模拟数据接口
1 RESTful一.理解RESTful架构要理解RESTful架构,最好的方法就是去理解Representational State Transfer这个词组到底是什么意思,它的每一个词代表了什么涵义。 (1)每一个URI代表一种资源; (2)客户端和服务器之间,传递这种资源的某种表现层; (3)客户端通过四个HTTP动词,对服务器端资源进行操作,实现"表现层状态转化"。 客...原创 2019-10-16 14:35:36 · 283 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:前端(一) 前端环境搭建
1 需求分析与技术架构一.理解前后端分离开发前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础。 以前老的方式是: 1.产品经理/领导/客户提出需求 2....原创 2019-10-15 09:45:00 · 1214 阅读 · 2 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(九) 微服务容器部署与持续集成
1 Dockerfile一.什么是DockerfileDockerfile是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。 对于开发人员:可以为开发团队提供一个完全一致的开发环境; 对于测试人员:可以直接拿开发时所构建的镜像或者通过Dockerfile文件构建一个新的镜像开始工作了; 对于运维人员:在部署时,可以实现应用的无缝移植。二.常用命令...原创 2019-10-13 11:41:44 · 221 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(八) SpringCloud(二)
1 熔断器Hystrix一.为什么要使用熔断器在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应。服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程。 如果下图所示:A作为服务提供者,B为A的服务消费者,C和D是B的服务消费者。A不可用引起了B的不可用,并将不可用...原创 2019-10-10 13:31:37 · 260 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(七) SpringCloud(一)
1 SpringCloud简介一.什么是SpringCloudSpring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、熔断器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起...原创 2019-10-08 11:51:55 · 226 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(六) 密码加密与微服务鉴权JWT
1 BCrypt密码加密一.准备工作任何应用考虑到安全,绝不能明文的方式保存密码。密码应该通过哈希算法进行加密。有很多标准的算法比如SHA或者MD5,结合salt(盐)是一个不错的选择。 Spring Security提供了BCryptPasswordEncoder类,实现Spring的PasswordEncoder接口使用BCrypt强哈希方法来加密密码。 tensquare_us...原创 2019-10-07 13:21:23 · 419 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(五) 消息中间件RabbitMQ
1 RabbitMQ简介一.消息队列中间件简介消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题实现高性能,高可用,可伸缩和最终一致性[架构] 使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 以下介绍消息队列在实际应用中常用的使用场景:异步处理,应用解耦,流量削锋和消息通讯四个场景二....原创 2019-10-07 11:34:19 · 207 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(四) 分布式搜索引擎ElasticSearch
1 ElasticSearch简介一.什么是ElasticSearchElasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下...原创 2019-10-07 10:16:32 · 454 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(三) 文档型数据库MongoDB
1 MongoDB简介一.吐槽和评论数据特点分析吐槽和评论两项功能存在以下特点: (1)数据量大 (2)写入操作频繁 (3)价值较低 对于这样的数据,我们更适合使用MongoDB来实现数据的存储二.什么是MongoDBMongoDB 是一个跨平台的,面向文档的数据库,是当前 NoSQL 数据库产品中最热门的一种。它介于关系数据库和非关系数据库之间,是非关系数据库当中功能最...原创 2019-10-05 11:07:51 · 300 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(二) 查询与缓存
1 基础微服务-条件查询一.标签-条件查询POST /label/search 根据条件查询城市列表 修改LabelService ,增加方法 修改LabelController,增加方法二.带分页的条件查询修改LabelService,增加方法 修改LabelController,增加方法2 招聘微服务开发一.表结构分析招聘微服务主要有两块:企业信息和招聘信...原创 2019-10-04 11:51:04 · 434 阅读 · 0 评论 -
Java项目 (SpringBoot+SpringCloud) 十次方:后端(一)环境搭建
1 系统设计一.系统架构前后端分离的系统架构,后端架构为: SpringBoot+SpringCloud+SpringMVC+SpringData 我们把这种架构也称之为全家桶。二.模块划分十次方工程共分为18个子模块(其中17个是微服务) 本章内容是搭建父工程、公共子模块tensquare_common和基础微服务tensquare_base。三.表结构分析我们这里采...原创 2019-10-04 10:27:46 · 841 阅读 · 0 评论 -
Day110 Java项目 (SSM+Dubbo)商城(十九) 秒杀(二)
第1章 多线程下单一.实现思路分析在审视秒杀中,操作一般都是比较复杂的,而且并发量特别高,比如,检查当前账号操作是否已经秒杀过该商品,检查该账号是否存在存在刷单行为,记录用户操作日志等。 下订单这里,我们一般采用多线程下单,但多线程中我们又需要保证用户抢单的公平性,也就是先抢先下单。我们可以这样实现,用户进入秒杀抢单,如果用户复合抢单资格,只需要记录用户抢单数据,存入队列,多线程从队...原创 2019-09-28 16:53:30 · 313 阅读 · 0 评论 -
Day109 Java项目 (SSM+Dubbo)商城(十八) 秒杀
第1章 秒杀业务分析一.需求分析所谓“秒杀”,就是网络卖家发布一些超低价格的商品,所有买家在同一时间网上抢购的一种销售方式。通俗一点讲就是网络商家为促销等目的组织的网上限时抢购活动。由于商品价格低廉,往往一上架就被抢购一空,有时只用一秒钟。 秒杀商品通常有两种限制:库存限制、时间限制。 需求:二.表结构说明秒杀商品信息表 秒杀订单表三.秒杀需求分析秒杀技术实现核心思想...原创 2019-09-27 16:34:06 · 289 阅读 · 0 评论 -
Day108 Java项目 (SSM+Dubbo)商城(十七) 微信支付解决方案
1. 微信支付快速入门一.微信支付申请(了解)第一步:注册公众号(类型须为:服务号) 请根据营业执照类型选择以下主体注册:个体工商户| 企业/公司| 政府| 媒体| 其他类型。 第二步:认证公众号 公众号认证后才可申请微信支付,认证费:300元/次。 第三步:提交资料申请微信支付 登录公众平台,点击左侧菜单【微信支付】,开始填写资料等待审核,审核时间为1-5个工作日内。 第...原创 2019-09-27 10:08:18 · 472 阅读 · 0 评论 -
Day107 Java项目 (SSM+Dubbo)商城(十六) 分布式事务解决方案
1. 结算页商品清单一.需求分析在订单结算页显示送货清单、合计金额、优惠金额。 显示购物清单应该刷新购物车,从数据库中查询最新价格计算。 下方显示合计件数与合计金额。二.实现思路后端新增方法,获取购物车列表循环更新每个商品的价格,刷新数据后更新购物车,并返回更新后的购物车数据。 前端获取列表后循环显示,显示合计件数与合计金额参考购物车页面的实现方式。三.后端代码Car...原创 2019-09-26 10:43:45 · 725 阅读 · 0 评论 -
Day106 Java项目 (SSM+Dubbo)商城(十五) 购物车解决方案
1. 购物车列表一.需求分析实现购物车列表的显示。购物车必须登录后才可以访问。 从商品详细页点击“加入购物车按钮”,将商品添加到购物车。 点击购物车列表项中数量的加减按钮实现对数量的修改。 删除购物车中某条记录。二.实现思路使用redis(hash类型数据)实现购物车的存储。大key为 CacheKey.CART_LIST ,当前登录名作为小key。购物车存储结构如下图:...原创 2019-09-25 13:32:18 · 659 阅读 · 0 评论 -
Day105 Java项目 (SSM+Dubbo)商城(十四) 单点登录解决方案 CAS
1.开源单点登录系统CAS一.什么是单点登录单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 我们目前的系统存在诸多子系统,而这些子系统是分别部署在不同的服务器中,那么使用传统方式的session是无法解决的,我们需要使用相关的单点登录技术来解决。...原创 2019-09-24 17:29:05 · 740 阅读 · 0 评论 -
Day104 Java项目 (SSM+Dubbo)商城(十三) 消息中间件RabbitMQ
1.走进RabbitMQ一.消息中间件简介消息中间件(消息队列)是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题实现高性能,高可用,可伸缩和最终一致性[架构] 使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 以下介绍消息队列在实际应用中常用的使用场景:异步处理,应用解耦,流量削锋和消息通讯四个场景...原创 2019-09-23 19:14:14 · 301 阅读 · 0 评论 -
Day103 Java项目 (SSM+Dubbo)商城(十二) 搜索解决方案-3 分页与排序
1.搜索分页一.需求分析实现搜索分页功能,每页显示30条记录。实现商品列表下方分页栏。二.分页语法与代码分页语法 需求:每页显示30条记录,查询第3页内容。分页语法如下: 分页代码 需求:每页显示30条记录,查询第3页内容。分页代码如下:三.分页查询逻辑实现思路:前端向后端传递参数 pageNo (页码) 修改SkuSearchServiceImpl的search方...原创 2019-09-23 12:33:22 · 296 阅读 · 0 评论 -
Day102 Java项目 (SSM+Dubbo)商城(十一) 搜索解决方案-2 过滤查询
1. 关键字搜索一.需求分析在首页或搜索页输入关键字,点击搜索二.实现思路后端使用匹配查询和布尔查询 前端使用thymeleaf模板渲染 前端向后端传递map(因为提交的不仅仅是关键字,还有品牌、规格、分类等信息) 后端向前端返回map(因为返回的不仅仅是列表,还有商品分类、品牌和规格列表等数据)三.集成elasticsearch高级客户端qingcheng_serv...原创 2019-09-22 21:40:37 · 269 阅读 · 0 评论 -
Day101 Java项目 (SSM+Dubbo)商城(十) 搜索解决方案-1 elasticsearch
1.走进ElasticSearch一.全文检索为什么要使用全文检索 用户访问我们的首页,一般都会直接搜索来寻找自己想要购买的商品。而商品的数量非常多,而且分类繁杂。如果能正确的显示出用户想要的商品,并进行合理的过滤,尽快促成交易,是搜索系统要研究的核心。 面对这样复杂的搜索业务和数据量,使用传统数据库搜索就显得力不从心,一般我们都会使用全文检索技术。 常见的全文检索技术有 L...原创 2019-09-21 17:04:56 · 455 阅读 · 0 评论 -
Day100 Java项目 (SSM+Dubbo)商城(九) 缓存解决方案
1.SpringDataRedis一.SpringDataRedis简介SpringDataRedis 属于Spring Data 家族一员,用于对redis的操作进行封装的框架 Spring Data ----- Spring 的一个子项目。Spring 官方提供一套数据层综合解决方案,用于简化数据库访问,支持NoSQL和关系数据库存储。包括Spring Data JPA 、Spr...原创 2019-09-20 20:48:49 · 304 阅读 · 0 评论 -
Day99 Java项目 (SSM+Dubbo)商城(八) 模板渲染解决方案
1.模板引擎thymeleaf一.thymeleaf简介Thymeleaf是一个适用于Web和独立环境的现代服务器端Java模板引擎。 Thymeleaf的主要目标是为您的开发工作流程带来优雅的自然模板 - 可以在浏览器中正确显示的HTML,也可以用作静态原型,从而在开发团队中实现更强大的协作。通过Spring Framework模块,与您喜欢的工具的大量集成,以及插入您自己的功能的...原创 2019-09-19 16:58:05 · 338 阅读 · 0 评论 -
Day98 Java项目 (SSM+Dubbo)商城(七) 授权
1.RBAC模型一.什么是RBAC权限系统提的最多的就是 RBAC(Role-Based Access Control 基于角色的访问控制)。 所谓角色,其实就是权限的集合,某个角色就是某几个权限的结合。其目的是为了简化授权和鉴权的过程。二.表结构分析企业开发中 RBAC模型设计为7张表,其中4张为基础表,3张为中间表。 用户与角色 用户和角色为多对多关系,通过用户角色中间表...原创 2019-09-18 13:21:13 · 263 阅读 · 0 评论 -
Day97 Java项目 (SSM+Dubbo)商城(六) 登录与认证
1.BCrypt密码加密一.BCrypt简介在用户模块,对于用户密码的保护,通常都会进行加密。我们通常对密码进行加密,然后存放在数据库中,在用户进行登录的时候,将其输入的密码进行加密然后与数据库中存放的密文进行比较,以验证用户密码是否正确。 目前,MD5和BCrypt比较流行。相对来说,BCrypt比MD5更安全。 BCrypt 官网http://www.mindrot.org/p...原创 2019-09-18 10:49:33 · 302 阅读 · 0 评论 -
Day96 Java项目 (SSM+Dubbo)商城(五) 统计分析
1.商品类目销售分析表一.需求分析商品类目销售分析是统计一段时间内各商品分类(一级分类)的销售数量与销售额以及所占总额的比重,如下图:二.实现思路销售分析表数据来自订单表和订单明细表,我们需要对订单表和订单明细表进行统计。订单明细表中记录了商品的一级分类,我们按照一级分类聚合运算就可以统计出各分类的销售额。 销售金额的统计要按照优惠后的金额(pay_money)进行统计。 订...原创 2019-09-13 17:25:56 · 1299 阅读 · 3 评论 -
Day95 Java项目 (SSM+Dubbo)商城(四) 商品管理后端逻辑
1.分布式ID生成解决方案一.数据库分片如何实现数据库分片?我们通常会使用mycat数据库中间件来解决。 MyCat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核...原创 2019-09-10 16:38:59 · 422 阅读 · 0 评论 -
Day94 Java项目 (SSM+Dubbo)商城(三) 模板与分类管理
1.代码生成器一.介绍内置了当前java和前端主流的架构模板,如SSM+dubbo ,springBoot+springCloud+springData ,前后端分离的vue+elementUI 模板、swaggerAPI模板、数据库文档模板等。 用户通过自己开发模板也可以实现生成php、python、C# 、c++、数据库存储过程等其它编程语言的代码。https://gitee.co...原创 2019-09-09 16:50:50 · 454 阅读 · 2 评论 -
Day93 Java项目 (SSM+Dubbo)商城(二) 品牌管理前端与图片上传
1. ElementUI介绍一.什么是ElementUIElement,“饿了么”出品的一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。二.ElementUI查用组件详见elementUI官网 http://element-cn.eleme.io/2.0/#/zh-CN2. ES6一.什么是ES6编程语言JavaScript是ECMA...原创 2019-09-08 15:26:40 · 264 阅读 · 0 评论 -
Day92 Java项目 (SSM+Dubbo)商城(一)
需求分析与系统设计一.需求分析一个全品类B2C电商平台,包含网站前台和管理后台两大部分。网站前台包含主站频道(首页、搜索、购物车及支付)、用户中心、秒杀、优惠券等频道。管理后台包含商品、订单、库存、用户、运营、统计、财务、设置等功能。二.系统设计数据库分库设计 (1)商品库 qingcheng_goods (2)订单库 qingcheng_order (3)基础设置库 qi...原创 2019-09-06 21:01:38 · 406 阅读 · 3 评论 -
Day89-91 Java框架 SSM分布式案例--商城(二)_Dubbo介绍
功能分析一.后台系统所用的技术框架: Spring + SpringMVC + Mybatis + dubbo 前端: EasyUI 数据库: mysql二.创建数据库安装mysql数据库 再Mysql中创建一个taotao数据库 导入数据库脚本三.系统间通信由于淘淘商城是基于SOA的架构,表现层和服务层是不同的工程。所以要实现商品列表查询需要两个系统之间进行通信。...原创 2019-09-03 20:43:13 · 309 阅读 · 0 评论 -
Day88 Java框架 SSM分布式案例--商城(一)介绍
电商行业技术特点一.特点技术新 技术范围广 分布式 高并发,集群,负载均衡,高可用 海量数据 业务复杂 系统安全商城介绍一.名词解释传统行业: OA, CRM, ERP, 医药采购管理系统, 银行系统, 财务软件 互联网行业: 电商(淘宝,京东,淘淘), 搜索(百度,谷歌), 社交(人人网,天涯论坛), 新浪微博, 门户网站(新浪,搜狐),12306.cn...原创 2019-08-27 19:18:23 · 368 阅读 · 0 评论 -
Day87 Java框架 SSM综合练习.分页.增删改查
开发环境IDE: Eclipse Mars2JDK: 1.7数据库: MySQL创建数据库一.数据库sql文件二.创建crm数据库,执行sql工程搭建使用Bootstrap前端框架,官方网站http://www.bootcss.com/工程使用SpringMVC、Spring、Mybatis框架整合完成一.需要的...原创 2019-08-26 18:26:50 · 250 阅读 · 0 评论 -
Day82 Java框架 SSH案例_ERP(十四)_Redis缓存系统
Shiro细颗粒授权控制我们前面做的权限控制都是建立在对URL的访问控制,我们把它称之为粗颗粒的访问控制。 我们还可以使用shiro的细颗粒授权控制。 细颗粒授权控制包括:方法级别 与 代码级别一.方法级别控制 对某个方法加访问控制,用户必须拥有某项权限才可以访问该方法,没有权限则抛出异常,无法访问。开启注解 在applicationContext_shiro.xml中...原创 2019-08-11 19:54:44 · 516 阅读 · 0 评论 -
Day81 Java框架 SSH案例_ERP(十三)__shiro框架
Shiro简介一.什么是ShiroApache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能: 认证(Authentication):用户身份识别,常被称为用户“登录”,判断用户是否登陆,如果未登陆,则拦截其请求 授权(Authorization):访问控制。当用户登陆后,判断其身份是否有权限访问相应的资源,如果没有权限则拦截 密码加密...原创 2019-08-11 12:18:06 · 225 阅读 · 0 评论 -
Day78-80 Java框架 SSH案例_ERP(十二)_权限分配
权限系统分析与构建一.需求与实现思路. 每个用户登陆进去看到的菜单应该取决于他们所拥有的权限,对于不同的用户,他们进入系统后看到的菜单可能是不同的。 一个标准的权限系统包括哪些表呢?刚才我们提到了用户、角色、权限,这就是三张表。用户与角色的关系是多对多,对于多对多关系,我们通常会使用中间表来存储它们的关系。那么对应的角色与权限的关系,也会有中间表。因此,权限...原创 2019-08-09 12:16:52 · 184 阅读 · 0 评论