自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springcloud-gateway

什么是微服务网关?1.微服务api接口的入口,实现过滤api接口。2.作用:实现用户的验证登录,解决跨域,日志拦截,权限控制,限流,熔断,负载均衡,黑名单和白名单机制等。3.安全性:前后端分离架构中,前端调用接口地址都能被抓包分析到。4.过滤器和网关的区别:过滤器适合单个服务,网关是所有服务(一个局部,一个整体)5.gateway不依赖于springboot-start-web...

2020-02-20 20:58:34 527

原创 IDEA Gradle项目编译不通过踩坑

IDEA Gradle项目编译不通过踩坑IDEA和Gradle结合用起来开发很方便,可是偶尔会调皮捣蛋,编译不通过,把红色的Build Faild丢给你,气你个半死。项目编译不通过,setting.gradle是包含该Module,但是发现某个Moudle没有.iml文件------------------------- 解决办法-----------------在ID...

2020-02-20 17:09:45 3166

原创 spring-监听器与事件

1.定义一个事件,继承事件,重写构造方法,设置源applicationContext2.定义监听器,继承监听器,传事件泛型3.事件源发布事件,就会触发监听器...

2020-02-04 15:19:33 201

原创 spring-依赖注入和Autowired

在Spring容器中为一个bean配置依赖注入有三种方式:1·使用属性的setter方法注入这是最常用的方式;2·使用构造器注入;3·使用Filed注入(用于注解方式).对于使用字段(Filed)注入(用注解方式)在Spring中,注入依赖对象可以采用手工装配或自动装配,在实际应用开发中建议使用手工装配,因为自动装配会产生许多未知情况,开发人员无法预见最终的装配...

2020-02-03 15:19:45 579

原创 springmvc流程与源码

一个访问/index的请求发出经过tomcat处理后1.调用HttpServlet的service()方法2.service()方法内部会调用FrameWorkServlet的doGet()方法3.doGet()方法内部会调用FrameWorkServlet的processRequest()方法4.processRequest()方法内会调用DispatcherServle...

2020-01-07 23:59:09 106

原创 spring(二)

1.spring容器初始化mapper接口生成容器时就已经把mapper信息给初始化完了(sql,方法名......)放到mappedStatements(MappedStatement类型的Map)里,2.后面调mapper bean的方法时,会根据id去取mappedStatementmybatis mapper的id的 = 对应命名空间 + 方法名...

2019-12-05 22:44:16 105

原创 springcloud踩坑

对于Feign,在转发请求的时候,如果传递的参数值为null或者"",feign底层会自动将参数过滤去除。

2019-12-04 15:25:17 259

原创 spring(一)实例化一个工厂DefaultListableBeanFactory流程

//实例化一个工厂DefaultListableBeanFactoryorg.springframework.context.support.GenericApplicationContext->GenericApplicationContext() 1、实力化一个AnnotatedBeanDefinitionReader 2、ClassPathBeanDefiniti...

2019-11-17 19:44:25 394

转载 AES加密算法踩坑

https://www.cnblogs.com/Darlin356230410/p/8602674.html

2019-10-11 18:51:00 688

原创 linux调试好用命令

sudo strace -f -s1000 -etrace=network,read,write -p 28506netstat -ano | grep 28506

2019-09-30 12:48:05 168

原创 git ssh失效踩坑

重新生成秘钥并设置,竟然不生效????????????、解决方法(粗暴):1、先输入$ git remote rm origin2、再输入$ git remote add origingit@github.com:djqiang/gitdemo.git就不会报错了!3、如果输入$ git remote rm origin还是报错的话,error: Could not remo...

2019-09-27 11:12:00 3793

原创 git本地连接远程分支

git 关联远程分支git branch --set-upstream-to=origin/remote_branch your_branch其中,origin/remote_branch是你本地分支对应的远程分支;your_branch是你当前的本地分支1、如果远程新建了一个分支,本地没有该分支。可以利用git checkout--trackorigin/branc...

2019-09-27 10:42:13 1169

原创 springboot全局异常处理

全局异常处理流程图:第一种全局异常处理器:

2019-09-10 21:30:41 131

转载 打破双亲委派()SPI+线程上下文

https://blog.csdn.net/yangcheng33/article/details/52631940

2019-09-07 12:24:48 371

转载 十大经典排序算法

https://blog.csdn.net/u012562943/article/details/100136531

2019-09-07 10:10:41 156

原创 Springboot踩坑记录

1.重复访问拦截器重定向到error页解决方法:1.拦截器拦截排除"/error"。 2.继承BasicErrorController,重写error处理方法。(治标不治本,springboot会继续交给自己的全局异常处理)...

2019-09-05 12:02:42 181

转载 jvm内存结构和内存模型

JVM内存结构《深入理解Java虚拟机(第2版)》中的描述是下面这个样子的:JVM的内存结构大概分为:堆(Heap):线程共享。所有的对象实例以及数组都要在堆上分配。回收器主要管理的对象。 方法区(Method Area):线程共享。存储类信息、常量、静态变量、即时编译器编译后的代码。 虚拟机栈(JVM Stack):线程私有。存储局部变量表、操作栈、动态链接、方法出口,对象指...

2019-09-04 17:44:12 4421

转载 Cookie的设置域名domain与跨域的问题

今天研究一天发现cookie无法设置除当前域名或者其父域名之外的其他domain.这个是浏览器出于对cookie的保护造成的,也就是cookie无法跨域设置。对于子域名也有如下规则,当前域名只能设置当前域名以及他的父域名,不能设置子域名如在www.wo.cao.baidu.com 域名下只能设置 cao.baidu.com,baidu.com不能设置 da.jia.wo.cao....

2019-09-04 10:48:35 5410

原创 多线程并发学习笔记(8) ThreadLocal

输出:ThreadLocal内部是hashmap实现set get是将当前线程作为key进行存储和取出

2019-09-03 16:24:08 179

原创 线程并发学习笔记(7)future设计模式

想象成蛋糕店买蛋糕:买蛋糕老板开始做蛋糕(futureService.submit()),但买了蛋糕需要等待老板给你一张凭证(future)但自己继续做蛋糕(call),你拿到凭证你可以去做其他事,做完其它事你再根据凭证找蛋糕店老板要蛋糕,这个时候要是还没做好(done=false),就继续在店里等待(wait),直到老板蛋糕做好通知你(done=true,)...

2019-09-03 14:53:17 146

原创 分布式锁

分布式锁要求:实现分布式锁的方式:总结以上三种方案:重点讲zookeeper锁:zk的数据结构与watcher机制:zk分布式锁思路:给来的第一个请求创建一个临时顺序节点,注册watcher,执行完毕,删除节点,通知下一个请求...

2019-09-03 00:24:41 160

原创 mysql日志管理

https://www.jianshu.com/p/00c54d2832ed简书

2019-09-02 10:43:37 115

转载 redis,mysql缓存一致性

https://cloud.tencent.com/developer/article/1154683

2019-08-31 19:43:07 271

原创 多线程并发学习笔记(2)

创建线程的方式2:stackSize:默认为0(表示忽略该参数)代表该线程的stack大小,能增加虚拟机栈帧深度

2019-08-30 00:10:57 117

原创 多线程并发学习笔记(6)

并发编程中三个比较重要的概念1.原子性2.可见性(主存缓存可见性)3.有序性(顺序性)【java重排序只要求最终一致性,它会影响多线程编程】volatile:这里不能保证并发原子性,两个线程操作可能导致输出值重复:我们可以将INIT_VALUE的值变化过程进行分解三个步骤有一个步骤放弃cpu执行权,就导致原子性得不到保证,只能加...

2019-08-29 18:05:32 132

原创 多线程并发学习笔记(5)

关于volatile关键字引出的问题首先我们来看看简单内存模型运行示例图:cpu不会直接从内存中拿取数据,而是经过一个缓存这也导致T1线程如果只读(ROT) cache1不更新,后当T2(RAT,刷新cache2,导致两边cache数据不一致(java做了优化,判断为只读,不更新cache1),这就叫cpu缓存不一致。解决方法:1.给数据总线加锁(数据总线,地址...

2019-08-29 16:49:32 127

原创 多线程并发学习笔记(4)

wait() notify() notifyAll()在java中,线程间的通信可以使用wait、notify、notifyAll来进行控制。从名字就可以看出来这3个方法都是跟多线程相关的,但是可能让你感到吃惊的是:这3个方法并不是Thread类或者是Runnable接口的方法,而是Object类的3个本地方法。其实要理解这一点也并不难,调用一个Object的wait与notify/n...

2019-08-29 10:56:57 103

原创 多线程并发学习笔记(3)

thread.join();等待当前线程结束才会去执行主线程thread.join(100);等待当前线程100毫秒才会去执行主线程thread.join(100,10);等待当前线程100毫秒又100纳秒才会去执行主线程关于interrupt中断线程:1. sleep() & interrupt() 线程A正在使用sleep()暂停着: Thread.sleep...

2019-08-26 20:09:57 129

原创 多线程并发学习笔记(1)

main(非守护线程)和jvm其他的守护线程(守护线程后续会介绍)线程生命周期:blocked状态线程获取锁或结束睡眠变为runnable状态,然后获取到cpu时间片变为running状态。running状态线程也会因为cpu时间片分配切换线程使其变为runnable,然后再获取到时间片变为running(这些进程“看起来像”同时运行,实则是轮番运行,由于时间片通常很短(...

2019-08-24 12:03:59 124

转载 spring-boot-starter-parent的一些记载

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.4.RELEASE</version> &lt...

2019-08-09 15:55:07 190

原创 docker基础

docker架构图:远程仓库拉取镜像流程:常用命令:docker mysql踩坑:mysql8之后版本要授权远程登陆和更改编码格式!

2019-08-04 23:48:05 118

转载 Nginx服务器安装及配置文件详解

nginx在工作中已经有好几个环境在使用了,每次都是重新去网上扒博客,各种编译配置,今天自己也整理一份安装文档和nginx.conf配置选项的说明,留作以后参考。像负载均衡配置(包括健康检查)、缓存(包括清空缓存)配置实例,请参考http://seanlook.com/2015/05/17/nginx-install-and-config,ssl加密请参考http://seanlook.co...

2019-07-31 15:27:09 203

转载 Nginx配置

nginx快速入门之配置篇nginx.conf 配置结构... #全局块events { #events块...}http #http块{ ... #http全局块 server #server块 { ... #server全局块 location [PATTERN] #location块 { ...

2019-07-31 15:24:46 393

转载 Git(ssh)多用户配置

在Git使用中经常会碰到多用户问题,例如:你在公司里有一个git账户,在github上有一个账户,并且你想在一台电脑上同时对这两个git账户进行操作,此时就需要进行git多用户配置。首先配置不同的SSH KEY,使用ssh-keygen命令产生两个不同的SSH KEY,进入.ssh目录:#切换到.ssh目录cd ~/.ssh #使用自己的企业邮箱产生SSH KEYssh-k...

2019-07-31 14:48:41 1364

原创 SOA maven多模块项目架构模型

SOA常见各层依赖关系图:部分项目各层模块图:

2019-07-31 00:14:39 351

原创 springboot与redis

JSR107: springboot整合redis缓存的原理 RedisTemplet序列化默认配置是使用jdk的序列化,不够直观,所以一般我们自己配置将对象转成json进行序列化...

2019-07-28 23:09:31 145

空空如也

空空如也

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

TA关注的人

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