自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 mysql索引

1.mysql架构1.1MySQL的客户端/服务器架构1.2各个模块的含义1.2.1连接管理1.2.2解析与优化查询缓存MySQL服务器程序会把刚刚处理过的查询请求和结果缓存起来,如果下一次有完全相同的请求过来,直接从缓存中获取。这个查询缓存可以在不同客户端之间共享,也就是说如果客户端A刚刚查询了一个语句,而客户端B之后发送了同样的查询请求,那么客户端B的查询就可以直接使用查询缓存中的数据。另外,如果查询请求中包含某些系统函数、用户自定义变量和函数、一些系统表,如 mysql 、infor

2022-12-07 10:57:20 445

原创 设计模式(待补充)

1.i++与++i的区别局部变量表:(Local Variable Table)是一组变量值存储空间,用于存放方法参数和方法内定义的局部变量。操作数栈:(Operand Stack)也常称为操作栈,它是一个后入先出栈(LIFO)。当一个方法刚刚开始执行时,其操作数栈是空的,随着方法执行和字节码指令的执行,会从局部变量表或对象实例的字段中复制常量或变量写入到操作数栈,再随着计算的进行将栈中元素出栈到局部变量表或者返回给方法调用者,也就是出栈/入栈操作。一个完整的方法执行期间往往包含多个这样出栈/入栈的过程

2021-11-05 17:06:41 163

原创 java集合知识

hashmap:数组链表红黑树:有一个链表转红黑树的过程concurrentHashMap:由分段变为CAS算法

2021-11-02 14:57:34 366

原创 springboot2.0基础入门

1.SpringBoot简介springboot是什么?SpringBoot是整合Spring技术栈的一站式框架SpringBoot是简化Spring技术栈的快速开发脚手架SpringBoot优点创建独立Spring应用内嵌web服务器自动starter依赖,简化构建配置自动配置Spring以及第三方功能提供生产级别的监控、健康检查及外部化配置无代码生成、无需编写XMLSpringBoot缺点人称版本帝,迭代快,需要时刻关注变化封装太深,内部原理复杂,不容易精通官网文档架构

2021-03-26 17:38:36 257

原创 java8新特性

1.lambda表达式1.1函数式接口函数式接口:有且只有一个抽象方法的接口,可以有其他的方法.称为函数式接口。@FunctionalInterface:在定义"函数式接口"时,为防止发生定义错误.使用该注解会强制按照"函数式接口"的语法检查,如果语法错误.编译器将会方法错误.我们不可能每次使用都去创建一个函数式接口,java8为我们提供了一些接口,就可以基本满足我们的使用***1.2内置的四大核心函数式接口消费型接口 Consumer< T >接收一个参数执行函数体里面内容,不

2021-03-26 01:07:17 279

原创 spring5

1、Spring 框架概述1.1 spring简介Spring 是一个分层的 JavaSE/EEfull-stack(一站式) 轻量级开源框架。轻量级:一个应用是否属于轻量级还是重量级,主要看它使用了多少服务.使用的服务越多,容器要为普通java对象做的工作就越多,必然会影响到应用的发布时间或者是运行性能.对于spring容器,它提供了很多服务,但这些服务并不是默认为应用打开的,应用需要某种服务,还需要指明使用该服务,如果应用使用的服务很少,如:只使用了spring核心服务,那么我们可以认为此时应用属

2021-03-17 15:02:18 220 1

原创 jvm内存结构,多线程,线程池与Java中的锁

jvm内存模型(内存结构管理)JVM内存主要分为:程序计数器,Java虚拟机栈,本地方法栈,Java堆,方法区。1.程序计数器字节码解释器通过改变程序计数器来依次读取指令,从而实现代码的流程控制,如:顺序执行、选择、循环、异常处理。在多线程的情况下,程序计数器用于记录当前线程执行的位置,从而当线程被切换回来的时候能够知道该线程上次运行到哪儿了。2.本地方法栈(stack)和虚拟机栈所发挥的作用非常相似,区别是: 虚拟机栈为虚拟机执行 Java 方法 (也就是字节码)服务,而本地方法栈则为虚拟机

2021-03-10 14:06:13 562 1

原创 GitGit

Git版本库(暂存区,本地仓库),工作区版本库与工作区:版本库定义:一个目录,目录中文件的修改删除等操作都会被git跟踪,在任意时刻都可查看操作记 录,或在将来某个时刻可以还原版本库的创建:在想要创建版本库的文件夹(workspace)下使用git init命令,这个(workspace)文件夹就被我们称作工作区 git init命令执行完毕,工作区(workspace)下会出现名为.git的文件夹我们称之为版本库暂存区与本地仓库版本库创建后我们在工作区中新建gittest.txt

2021-02-05 21:38:50 193

原创 秒杀功能设计思路

1.秒杀业务是一个单独的微服务,若包含在其他服务中,在高并发访问环境下,秒杀业务会占用大量系统资源导致其他业务不可用。创建场次,例4点场,6点场,场次关联商品(id,价格等),上架秒杀商品。流程2.秒杀流程...

2020-05-20 00:30:06 854

原创 支付宝沙箱

一、支付宝支付进入蚂蚁金服开放平台https://open.alipay.com/platform/home.htmhttps://opendocs.alipay.com/open/270/105899下载支付宝官方demohttps://opendocs.alipay.com/open/270/106291配置使用沙箱环境测试提示 : 项目使用utf-8编码格式,编码不同可能会造成签名错误等问题将demo导入idea,进入沙箱测试环境https://openhome.alipay.com/

2020-05-19 18:12:52 150

原创 幂等性

一、什么是幂等性接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用。举个最简单的例子,那就是支付,用户购买商品后支付,支付扣款成功,但是返回结果的时候网络异常,此时钱已经扣了,用户再次点击按钮,此时会进行第二次扣款,返回结果成功,用户查询余额返发现多扣钱了,流水记录也变成了两条.,这就没有保证接口的幂等性二、哪些情况需要防止用户多次点击按钮用户回退页面再次提交微服务互相调用由于网络问题,导致请求失败。feign触发重试机制。三、什么情况下需要幂

2020-05-18 23:08:00 271

原创 Http与Https协议(待补充)

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统(默认HTTP的端口号为80,HTTPS的端口号为443)1.http简介:HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。2. HTTP协议的主要特点:(1) 支持客户/服务器模式。(HTTP协议永远都是客户端发起请求,服务器回送响应)(2) 简单快速:客户向服务器请求服务时,只需

2020-05-17 18:52:33 649

原创 分布式事务

事务(1)事务特性①原子性(Atomicity):事务的中的操作要么全部成功要么全部失败②一致性(Consistency):事务必须使数据库从一个一致性状态到另一个一致性状态,例:A和B一起来有5000块,无论两者之间如何转账最后总量都必须为5000③隔离性(Isolation):同时开启的两个事务之间互不干扰④持久性(Durability):指一个事务一旦提交,那么对数据库的保存都是以永久的(2)事务并发问题①脏读:一个事务读取过程中,读取到了另一个事务未提交的数据②不可重复读:一个事务内

2020-05-17 01:50:10 192

原创 Spring boot与Spring Cloud项目实战(三、商品服务-01.三级分类操作)

1.查询递归树形结构数据获取1.将pms_catelog文件张的数据导入数据库wwamll-product的pms_category表中

2020-05-14 23:59:25 640

原创 认证服务(Oauth、分布式集群session共享问题、单点登录)

注册好玩的代码倒计时1.页面js提交注册请求到认证服务自定义视图映射将无实际业务意义只进行页面跳转的请求抽取到viewcontroller中路径映射默认都是get访问的使用阿里云的短信验证码参考第三发接口文档,原理就是请求短信服务地址并设置http的请求头(服务地址,appcode,和method)和参数(验证码,模板,公司签名,手机号)此处应注意不应该是页面直接短服务,而是页面ajax请求认证服务,认证服务远程调用短信服务发送验证码注册页调用2.认证服务的远程调用第三方短信服务发送

2020-05-14 23:58:27 1771

原创 nginx环境搭建

项目微服务nginx+windows搭建域名访问服务, 使用host文件配置模仿公网dns解析域名域名映射效果正向代理与反向代理nginx动静分离nginx转发效果

2020-05-13 15:27:37 190

原创 redis的使用(分布式锁,常见使用场景)

1.缓存使用本地缓存本地缓存在分布式项目下的问题(各个服务拥有各个服务的缓存组件)同一个用户在访问时可能会访问不同的服务,这样就会导致之前在别的服务上的缓存无法使用,也会产生数据一致性的问题分布式缓存2.分布式应用redis的使用引入依赖简单配置reids地址等信息使用spring提供的StringRedisTemplate来操作redis例子:保存字符串并查询实际应用(简单使用)压力测试下出现的问题-堆外内存溢出问题解决:切换使用jedis1.引入依赖3.

2020-05-12 01:59:47 2250

原创 高级篇(141-)性能压测与调优

压力测试性能指标jmeter安装及使用官网下载apache jmmter解压使用/bin/jmeter.bat文件即可使用配置中文使用1.新建线程组启动两百个线程在一秒钟之内同时测试接口(选择永远就是一直循环直到点击stop按钮)2.为线程组新建取样器(需要测试的主体配置)3.压力测试结果-监听查看树(查看请求信息)压力测试结果-汇总报告线程组启动即可jemeter address in use问题解决并新建TcpRomedWaitDelay值为30

2020-05-11 14:57:22 457

原创 JSR303校验与统一异常处理

JSR303校验的使用1.给bean的属性添加校验注解并自定义校验提示信息更多校验注解参考javax.validation.constraints包;BrandEntity.java @NotBlank(message = "不能为空") private String name; // 品牌logo地址 @URL(message = "logo必须是一个合法的url地址") private String logo; //自定义校验规则 @Pattern(regexp = "/^[a-zA

2020-05-11 11:28:19 564

原创 springcloud中的跨域问题

问题出现:浏览器阻止跨域请求原因 :浏览器不能执行其他网站的脚本,他是由于浏览器的同源策略造成的是浏览器对javascript施加的安全限制。同源策略:是指协议域名端口都要相同,有一个不相同都会产生跨域问题跨域请求的流程非简单请求(PUT,DELETE等)需要先发送预检请求问题解决1.使用nginx将项目部署到同一域中(目的为解决项目问题,这里不做详解)配置请求允许跨域在分布式应用中配置请求允许跨域分布式项目中用到跨域非常多,所以我们这里将跨域配置在gateway网关中。spr

2020-05-10 17:19:07 455

原创 PO,DO,TO,DTO, VO,BO,POJO ,DAO概念

文章出路:https://www.cnblogs.com/zhangjianbin/p/7007837.htmlJava中PO、DO、TO、DTO、 VO、 BO、POJO 、DAO的概念1.PO(persistant object) 持久对象  在 o/r 映射的时候出现的概念,如果没有 o/r 映射,没有这个概念存在了。通常对应数据模型 ( 数据库 ), 本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的 Java 对象。最简单的 PO 就是对应数据库中某个表中的一条记录,多个记录可以用

2020-05-10 14:18:49 162

原创 电商项目的类目,spu,sku,单品

类目,spu,sku,单品类目:类目是一个树状结构的系统,大体上可以分成4-5级。如手机->智能手机->苹果手机类目,在这里面,手机是一级类目,苹果手机是三级类目,也是叶子类目。SPU:苹果6(商品聚合信息的最小单位),如手机->苹果手机->苹果6,苹果6就是SPU。sku(单品) : 影响价格和库存的 属性集合, 与商品是多对一的关系,即一个商品有多个SKU。如:手机->智能手机->苹果手机类目->iPhone6(三种颜色:流光蓝、霓光紫、霓光渐变色)(

2020-05-10 13:27:52 2838

原创 阿里云对象存储(oos)

文件上传分布式系统文件上传

2020-05-09 23:39:28 2238

原创 使用命令删除仓库内所有.lastUpdate文件

原创作者:https://blog.csdn.net/syilt/article/details/93376949构建Maven项目时经常会遇到jar包下载失败的原因,主要原因为仓库链接和网络问题。但是如果存在lastUpdate文件,就算网络好时jar也会下载失败,这时需要删除这些文件。删除这些文件的步骤:1.打开cmd命令2.定位到maven仓库3.执行命令:for /r %i i...

2020-05-08 12:14:39 1942

原创 JAVA基础-泛型用法

为什么会有泛型呢?早期的Object类型可以接收任意的对象类型,但是在实际的使用中,会有类型转换的问题。也就存在这隐患,所以Java提供了泛型来解决这个安全问题泛型类把泛型定义在类上格式:public class 类名<泛型类型1,…>注意:泛型类型必须是引用类型泛型方法把泛型定义在方法上格式:public <泛型类型> 返回类型 方法名(泛型类型 .)泛...

2020-05-07 10:24:23 107

原创 前端基础-02.Vue

1.MVVM思想M:Model模型层,包括数据和一些基本操作。V:Viem视图层,视图页面渲染结果。VM:Viem-Model,模型与视图的双向操作,无需开发人员干涉。在MVVM之前,开发人员从后端获取需要的数据模型,然后要通过DOM操作Model渲染到View中。而后当用户操作视图,我们还需要通过DOM获取View中的数据,然后同步到Model中。MVVM中的VM要做的事情就是把DOM...

2020-05-06 23:19:20 411

原创 前端基础-01.ES6

前后端技术栈对比1.简介ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。  目标:是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。2.什么是ECMAScriptECMAScript是浏览器脚本语言的规范;ECMAScript是JavaScript的规格,Java...

2020-05-05 01:37:43 163

原创 (基础篇20-xxx)SpringCloud Alibaba组件

配置中心(SpringCloud config)注册中心(SpringCloud netflix eurka)API网关(SpringCloud netflix zuul)1、SpringCloud Alibaba简介Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻...

2020-05-04 00:24:02 940

原创 基础篇(15-19)人人开源快速开发

1.人人开源快速搭建后台管理系统码云搜索人人开源git bash 输入命令克隆两个项目git clone https://gitee.com/renrenio/renren-fast.gitgit clone https://gitee.com/renrenio/renren-fast-vue.git删除 renren-fast中的.git文件后,将项目放入wwmall根目...

2020-05-02 00:09:55 1416

原创 (基础篇1-15)项目架构简介及环境搭建

1、项目的架构介绍2、环境搭建2.1liunx虚拟机的安装及配置2.2docker的安装及配置1.卸载旧版本(建议两个都用)yum list installed | grep docker(查看安装的docker)yum -y remove docker-engine.x86_64(这是安装的docker名)或直接使用sudo yum remove docker docke...

2020-04-30 00:21:54 853

原创 Spring Boot与监控管理附(开发热部署)

一、热部署在开发中我们修改一个Java文件后想看到效果不得不重启应用,这导致大量时间花费,我们希望不重启应用的情况下,程序可以自动部署(热部署)。有以下四种情况,如何能实现热部署。模板引擎在Spring Boot中开发情况下禁用模板引擎的cache页面模板改变ctrl+F9(重新编译)可以重新编译当前页面并生效 thymeleaf: cache: falseJReb...

2020-04-28 18:31:28 113

原创 Spring Boot与分布式(分布式、Dubbo/Zookeeper、Spring Boot/Cloud)

一、分布式应用在分布式系统中,国内常用zookeeper+dubbo组合,而Spring Boot推荐使用全栈的Spring,Spring Boot+Spring Cloud。分布式系统架构:ORM:是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。MVC:用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进...

2020-04-28 16:17:55 595

原创 Spring Boot与安全(安全、Spring Security)

一、安全Spring Security是针对Spring项目的安全框架,也是Spring Boot底层安全模块默认的技术选型。他可以实现强大的web安全控制。对于安全控制,我们仅需引入spring-boot-starter-security模块,进行少量的配置,即可实现强大的安全管理。几个类:WebSecurityConfigurerAdapter:自定义Security策略Authent...

2020-04-27 19:50:04 177

原创 springboot与任务(定时、异步、邮件)

一、异步任务java应用在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类任务,其实,在Spring 3.x之后,就已经内置了@Async来完美解决这个问题。两个注解:@EnableAysnc:标注在springboot启动类上开启异步注解功能、@Aysnc:标注在一个方法上表示该方法开启一个线程。二、定时任务java应用中经常需要执行一些定时任务,...

2020-04-27 02:47:49 248

原创 高级篇(102-125)ElasticSearch 检索

一、检索概述应用经常需要添加检索功能,开源的 ElasticSearch 是目前全文搜索引擎的首选。他可以快速的存储、搜索和分析海量数据。Spring Boot通过整合Spring Data ElasticSearch为我们提供了非常便捷的检索功能支持;Elasticsearch是一个分布式搜索服务,提供Restful API,底层基于Lucene,采用多shard(分片)的方式保证数据安全,...

2020-04-26 20:48:09 643

原创 springboot与消息

一.消息队列概述大多应用中,可通过消息服务中间件来提升系统异步通信、扩展解耦能力。消息服务中的两个重要概念:消息代理(message broker) 和目的地(destination);;当消息发送者发送消息以后,将由消息代理接管,消息代理保证消息传递到指定目的地。消息队列主要有两种形式的目的地队列(queue) :点对点消息通信(point-to-point)消息发...

2020-04-25 23:14:14 401 1

原创 SpringBoot-缓存(spring缓存抽象、整合redis)

1.spring的缓存抽象Spring定义了org.springframework.cache.Cache和org.springframework.cache.CacheManager接口来统一不同的缓存技术。并支持使用JCache(JSR-107)注解简化开发。Cache接口为缓存的组件规范定义,包含缓存的各种操作集合。Cache接口下Spring提供了各种xxCache的实现;如Red...

2020-04-24 15:02:55 415

原创 docker

解决方法:https://www.jianshu.com/p/9de623475d53

2020-04-17 14:28:33 625 1

原创 记一次使用idea创建springboot项目时maven下载依赖spring-boot-starter-parent包出错问题

使用idea自带mavenidea配置将-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true填入此处意为跳过证书验证点击重新导入clean,compile,install如还不行重启idea问题解决...

2020-03-30 19:21:20 2483

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除