自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

YuGuHan的博客

只要想到开始,任何时候都不晚

  • 博客(21)
  • 收藏
  • 关注

原创 翻牌源码之JAVA多线程系列---synchronized剖析

1、synchronizedsynchronized是java内置的锁,用于实现原子性操作。(原子操作好比是动作的最小单位,要么一步到位做完,要么不做,中间谁都不可以横插一脚)synchronized包裹的代码称为“同步代码块”,包含两部分:一个作为锁的对象,一个作为这个锁保护的代码块。如果synchronized修饰了一个方法,那么这个方法的全部内容,就相当于是一个被锁保护着的同步代码...

2021-01-21 14:18:35 207

原创 翻牌源码之Nacos--配置中心实现 二

nacos配置中心动态感知配置变化,server部分实现

2021-01-09 17:54:34 1243

原创 翻牌源码之Nacos--配置中心实现 一

Nacos怎么入门?当然是从看官方文档开始。这篇博客就把怎么安装Nacos,怎么进行服务的注册进行一个梳理吧。

2021-01-07 22:10:05 634 1

原创 java SPI 简单使用解析

java从1.6开始引入了ServiceLoader工具类,用来实现服务提供者框架(SPI)。这个框架主要有三个组成部分:服务接口、提供者注册、服务访问。其中,服务接口是提供服务者要实现的。具体使用的方向,有一点就是实现功能的可插拔性,可以在软件运行的过程中,随时更换组件而不耗费过多的精力。比如有这个么一个人,每天都要出门去买早点,平常都是跑着去。但有一天生病了,必须要走着去了,有了我们的...

2020-07-22 20:19:25 167

原创 一条龙服务,总有一款适合你——责任链模式

责任链

2020-07-19 18:04:37 470

原创 WebClient异步调用-超时时间配置

SpringBoot 2.x版本提供了Spring WebFlux模块,支持了请求的异步调用。在微服务中,使用服务A调用服务B时,也是可以进行异步调用的,Spring5封装了WebClient来进行这项操作,这里创建两个项目来模拟项目之间的这种调用。首先,创建SpringBoot项目,这里使用时下最新版本 2.3.1.RELEASE进行说明。我使用的是Maven,首先要添加相应的web组件依赖,如下:<dependency> <groupId>org...

2020-06-17 21:07:08 4895 1

原创 翻牌源码之JDK----Steam(流)简单解读

接触并使用了java8特性的大家伙儿,对于集合的一些操作估计都已经得心应手了。那就是使用集合操作的相关的Stream的api。Stream是什么呢?在api中说,她是支持对元素进行并行或者顺序操作的一个序列。我们直接上源码:List<String> words = Arrays.asList("i", "love", "you", "my", "friend", "and"...

2019-09-03 22:09:07 1303

原创 完整搭建Spring Cloud微服务(四) 服务之间的调用(WebClient)

Nacos搭建好了,服务的注册也可以了,配置中心也大概弄得差不多了,是时候让多个服务进行相互调用了。这里用的是webflux,所以我们使用webClient来进行服务之间的调用,用的reactive的风格。除了刚才的service-1,我们再复制一个client-1出来,搭建过程其实是一模一样的,只是记得要修改默认端口号,这里就不再多说了。具体的服务搭建方法,前两节应该说的算清楚了。搭建完...

2019-07-07 17:17:48 6524 4

原创 完整搭建Spring Cloud微服务(三) Nacos作为配置中心(多环境配置)

从Nacos的web管理端中可以看出来,Nacos不仅可以作为服务注册与发现中心,还可以负责配置中来使用。Nacos作为配置中心使用的好处,最主要就是配置可以集中管理,减少出错和操作成本。更多的好处,大家可以去google,我们这里还是以使用为主。根据上一节搭建好的服务,还没有办法直接使用Nacos作为配置中心,需要在额外添加一个依赖才可以。话不多说,依赖如下:<depende...

2019-07-07 16:05:30 8076 2

原创 完整搭建Spring Cloud微服务(二) 创建一个springBoot 服务并注册

这里只讨论微服务入门级的整合与操作步骤,具体更深入的原理与高级用法,可以在后续的使用过程中,逐步添加上来。微服务架构,在实现业务的部分,是由一个又一个的服务组成的。因为我选择使用springcloud,所以最为直接的,就是使用springBoot作为服务架构,这是原生支持的,所以用起来也是比较顺手的。从最底层开始,我们要创建一个最为基本的springBoot服务。springBoot项目...

2019-07-07 15:24:47 3995

原创 完整搭建Spring Cloud微服务(一) 认识并安装Nacos

微服务搭建有许多中间件与工具可供选择。比如服务注册,发现与配置中心,就有Dubbo,Spring Cloud Netflix Eureka等多种多样的选择。不能说哪个最好,只能说可以实现业务需求并且简单易用,那就是适合的。这里我选择了Nacos来实现服务的注册与发现,并使用springcloud作为整体的微服务架构。下边先从nacos说起吧,安装起来了,才能让他工作。nacos的介绍官网介绍...

2019-07-07 11:05:43 7557

原创 初识Spring Cloud Eureka(三)(Eureka客户端之间 服务的相互调用)

接着上一篇博客,客户端的创建我们知道了服务的注册与发现,那么,服务之间是怎么进行互相调用的呢?我们先看一下服务列表,然后通过实例,来看一下怎么进行服务之间的调用,再稍微看一下源码,看看调用是怎么实现的。首先,我们按照上一篇博客的方法,创建了三个服务,一个server端,两个client,通过访问server,如下所示:使用eureka_client-2调用eureka_clie...

2019-03-31 15:11:34 3317

原创 初识Spring Cloud Eureka(二) (单机版~~Eureka客户端的创建)

上一篇文件说了Eureka服务的创建,下边接着说Eureka客户端的创建。闲话少说,直接上实战,首先还是创建springcloud项目:选择最主要的,直接下一步到完成即可。看一下,pom文件中最主要的依赖: &lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;org.spr...

2019-03-14 21:59:43 1223

原创 初识Spring Cloud Eureka(一) (单机版~~Eureka服务的创建)

今天开始,将spring cloud 系列从入门到源码,一步一步的进行研究,再此做个记录。以期在理解上若有什么偏颇,可以有人帮忙指正,也为要进入spring cloud的同道中人,给予一点点的启发,防止步入同我一样的坑中。第一个要做的,肯定是微服务最为不可缺少的,服务的注册管理与发现。那就从官方的Eureka开始吧,直接进入项目实战。我用的是IEDA,如图所示,选择springboot项目...

2019-03-13 22:37:11 313

原创 Spring boot+Mybatis+druid连接池及监控信息配置

新建项目我是用的是IDEA,项目选择如下所示:为项目取一个名字,如下图所示,然后点击next选择需要添加的模块,选择完毕后,会自动将所需的依赖,添加到pom文件中确认路径无误,点击finish即可项目基本结构,IDEA会自动生成,为了测试环境是否可以成功运行,建议建包结构如下:项目生成后的pom文件内容如下:        &lt;dependency&gt; &lt;gr...

2018-06-28 09:46:35 3798 2

转载 spring boot整合druid出现(*) property for user to setup

1、如果引入jpa就不会出现这个问题了,引入如下: &lt;dependency&gt;&lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;&lt;artifactId&gt;spring-boot-starter-data-jpa&lt;/artifactId&gt;&lt;/dependency&gt;2、如果不引人jpa引入mybat...

2018-06-27 20:31:09 2869

原创 java 三大排序方法

排序方法是经常用到的java基本知识。下边把基本的三大方法保存到这里,以作记录。public class Sort { private static void swap(int[] arr,int index1,int index2){ int temp = arr[index1]; arr[index1] = arr[index2]; ar...

2018-06-11 22:41:05 456

原创 JAVA设计模式之适配器模式

适配器模式的目的,是让已经过时的或者不兼容的方法调用,在不改变内部实现的情况下,可以适应新的调用规则。

2018-06-08 23:23:11 146

原创 JAVA设计模式之装饰者模式

装饰者模式,就是在不改变目标内部实现的情况下,动态的对其前置或后置实现一些功能逻辑。

2018-06-07 23:20:14 173

原创 JAVA设计模式之观察者模式

观察者模式定义了一种一对多的依赖关系.简单的解释就是多个观察者对象,一同观察某个主题对象,并随着主题对象的更新,而各自进行相应的更新.举个例子,动物园里饲养员是一个主题对象,而这个饲养员所喂养的动物,就是一个个的观察者对象.在这个例子中的饲养员比较奇葩,他对它所喂养的动物,统一喂同一种食物,虽然动物不得不吃这些食物,但对这种食物都有着各自的看法.首先我们知道,所有的饲养员,虽然性格不同,但是,他们...

2018-06-05 21:02:53 187

转载 oracle-解析CLOB格式字段转String

SQL CLOB 是内置类型,它将字符大对象 (Character Large Object) 存储为数据库表某一行中的一个列值。默认情况下,驱动程序使用 SQL locator(CLOB) 实现 Clob 对象,这意味着 CLOB 对象包含一个指向 SQL CLOB 数据的逻辑指针而不是数据本身。Clob 对象在它被创建的事务处理期间有效。在一些数据库系统里,也使用Text 作为CLOB的别名,...

2018-06-05 10:35:38 37120 4

空空如也

空空如也

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

TA关注的人

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