自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (2)
  • 收藏
  • 关注

原创 spring cloud gateway全局过滤器 向request header中放数据

exchange.getRequest().getHeaders().set(); 是不能向 headers中放文件的这时配置一个gateway全局过滤器 filter中 做了向 header放数据/** * @Description 全局过滤器 在这里可以实现记录日志和访问权限校验等 * @Author [email protected] * @Created D...

2018-07-16 17:25:49 44779 15

原创 Java中的装箱与拆箱

装箱与拆箱是jdk5以后提供的功能在jdk5之前Integer i = new Integer(2);Integer j = Integer.valueOf(3);jdk5之后Integer i = 2;public class Main { public static void main(String[] args) { Integer i = 10; int n = i; }}这样一段代码实际上在编译后的字节码文件中其实装箱就是调

2020-08-18 15:43:46 176 1

原创 线程池原理中文描述

public static void main(String[] args) { ExecutorService executorService = new ThreadPoolExecutor(5,10,1000L, TimeUnit.MICROSECONDS,new ArrayBlockingQueue<Runnable>(3),new DefaultManagedAwareThreadFactory()); IntStream.range(0,14).for

2020-07-31 13:54:31 212

原创 springboot加载json配置

首先要写一个PropertySourceLoader 的实现public class JSONPropertySourceLoader implements PropertySourceLoader { @Override public String[] getFileExtensions() { return new String[]{"json"}; } @Override public List<PropertySource<?&

2020-06-19 10:47:07 2409

原创 maven指定多源码路径

实际场景中 有时会有在一个src下区分多个不同源码包的情况 ,maven 中的一个插件提供了这个功能<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <executions>

2020-05-20 13:51:29 725

原创 修改FeginCilent定义的服务名到指定服务

通过覆盖类来修改对应的服务名,这里将所有的FeginClient对应的服务名都修改好。package org.springframework.cloud.openfeign;import java.io.IOException;import java.net.MalformedURLException;import java.net.URI;import java.net.URISyntaxException;import java.net.URL;import java.util.Arra

2020-05-11 15:59:46 317

原创 Spring Cloud Gateway如何获取body体数据

org.springframework.cloud.gateway.handler.predicate.ReadBodyPredicateFactory 中定义 在路由中配置了该谓词 就可以将 body体中的数据放到exchange.getAttribute(“cachedRequestBodyObject”);我们怎么使用呢?@Bean public RouteLocator req...

2020-04-22 17:10:36 4043 11

原创 apollo动态刷新ConfigurationProperties注解标注的配置类

默认情况下 apollo无法刷新 ConfigurationProperties标注的属性实时更新我查看官方文档他推荐了两种实现思路@RefrashScope和通过EnvironmentChangeEvent这两个都是在spring-cloud-context中提供的我简单举个例子/** * @Description * @Author changyandong * @Emoji...

2020-04-20 14:52:37 1782

原创 ReentrantLock和AQS解析

本文参考了https://blog.csdn.net/javazejian/article/details/75043422ReentrantLock是在多线程问题处理中常用的锁结构,作为一种排它锁 他比 synchronized要灵活,使用上却要比 synchronized复杂一些。要了解ReentrantLock的原理就不得不提到AQS,AQS 即 AbstractQueuedSynchr...

2020-04-10 11:15:25 318

原创 ClassLoader的理解与双亲委派机制和违反双亲委派

这里大量参考了如下博客https://blog.csdn.net/javazejian/article/details/73413292ClassLoader是一个抽象类,他有很多个实现BootstrapClassLoader是最顶层的classloader 负责加载jvm需要的类 <JAVA_HOME>/lib路径下的核心类库或-Xbootclasspath参数指定的路径下的j...

2020-03-31 11:44:20 626

原创 Spring Cloud Gateway基于服务发现Hystrix配置

适用版本 spring cloud gateway 2.0.0 及以上 之前的版本我没使用过,说不定可以行。最初我们用的是这种配置方式spring.cloud.gateway.default-filters[1].name=Hystrixspring.cloud.gateway.default-filters[1].args.name=fallbackcmdspring.cloud.gat...

2019-10-10 17:25:06 4409 1

原创 编译netty出现\common\src\main\java\io\netty\util\AbstractConstant.java:0: invalid newline character (exp

最近在 研究netty源码时发现,import io.netty.util.collection.LongObjectHashMap;import io.netty.util.collection.LongObjectMap;这两个包找不到 查询后发现他们在这里需要手动打包后才能生效这时在 common下执行 mvn clean install 发现报错[ERROR] E:\myWo...

2019-09-24 15:49:16 3181

原创 23种设计模式java实现

自己写的设计模式https://github.com/p555iii/design-patterns

2019-06-13 14:39:38 293

原创 HashMap jdk 1.8源码分析

首先放上参考的博客 https://blog.csdn.net/v123411739/article/details/78996181 jdk1.8之前 的hashMap 是基于数组加链表的形式的,jdk1.8 oracleJdk优化了jdk的源码 采用数组加链表 或者数组加红黑树的形式 在链表上挂的数据超过一定长度后就会转为红黑树 。我先搬上面博客的一点内容:几个点...

2019-04-17 09:23:41 154

原创 LinkedList源码分析

在我的印象里LinkedList的使用场景并没有ArrayList多,我一度认为ArrayList并没有LinkedList复杂,毕竟LinkedList是链表实现的。但是在我读完LinkedList的源码后发现,LinkedList的源码并没有ArrayList那么多的数组copy。只是单纯的链表操作。首先看类定义public class LinkedList&lt;E&gt; ex...

2019-01-15 17:44:41 2139

原创 ArrayList源码分析(着重迭代器安全删除)

ArrayList是我们最常用的集合类型之一,大家都知道他的底层实现是数组。最近刚好想研究一下jdk的源码,就从ArrayList开始看吧。本来我想写的 但是我看完源码在查资料的时候发现 这个老哥写的很好,跟我的想法很像,下面贴出链接https://blog.csdn.net/starexplode/article/details/80469079他有些地方没写全 我这里补充一下比如迭代器...

2019-01-15 17:44:01 460

原创 spring cloud gateway通过注册中心(eureka)聚合swagger

在spring cloud 的使用的时候,我发现测试起来很不方便,需要使用Postman等类似的工具来调用我们的接口,这显然是很麻烦的,那么有没有一种方式可以让我们在gateway里使用swagger来测试呢。本文基于Finchley.RELEASE和最新版的Finchley.SR2,这两个版本有所改动,后面介绍。答案是肯定的,我查阅资料发现了之前有人实现了zuul网关的聚合swagger,通过...

2018-11-14 08:54:06 3173 4

原创 spring cloud gateway 启动流程及原理分析

spring cloud gateway 作为新一代的微服务网关已经发布了一段时间,我从7月份开始使用到现在已经4个月了。但是我一直处于一种只会使用,原理一知半解的水平。我们小组作为公司微服务产品的实践者,我自己作为组中一员完成了spring cloud gateway的开发,也解决了很多棘手的问题,却对它的原理和启动流程一知半解,好几次就是因为不了解它的启动流程,导致开发受挫,进度缓慢。现在正值...

2018-11-06 17:19:02 7720

原创 spring cloud gateway聚合swagger

在spring cloud 的使用的时候,我发现测试起来很不方便,需要使用Postman等类似的工具来调用我们的接口,这显然是很麻烦的,那么有没有一种方式可以让我们在gateway里使用swagger来测试呢。答案是肯定的,我查阅资料发现了之前有人实现了zuul网关的聚合swagger,通过他的思路我自己写了一些类,首先需要,在gateway网关中创建三个类,下面贴出来SwaggerHandl...

2018-10-17 17:07:52 2328

原创 Eureka原理分析

#总结eureka内部实际上是分为三个实例的,分别是Client,Server和Instance,Eureka-Client启动,创建Instance实例,封装成对象,推送给server,server接收Instance对象,返回实例集合,并签订租约,client定时发动续租请求到server,server维护各个instance实例,服务之间调用不通过eureka。#Eureka-Clie...

2018-10-11 16:50:46 3458 2

原创 springboot启动前执行方法的几种方式

第一种 &nbsp;@PostConstruct注解@Configurationpublic class Test1 { @Autowired private Environment environment; @PostConstruct public void test(){ String property = environme...

2018-10-11 16:49:59 9228

原创 spring boot 1.5.x系统怎么使用spring boot admin 2.0

用过spring boot admin2.0的人 再回去用spring boot admin 1.5 就会感觉像是退化了一样,但是默认情况下spring boot 1.5.x不能使用 admin2.0的内容下面是页面对比这是admin1.5的页面 用angular.js写的 虽然功能都有 但是页面难看这是2.0的页面是不是比1.5好看不少我现在的想法是还是用spring boot1.5...

2018-10-11 16:46:27 2643 14

原创 spring cloud gateway获取请求的真实地址

在使用spring cloud gateway的时候,路由一般配置为服务名 例如 lb://BASE-API-WEB/xxx/bbb 路径,我们无从知道,他真正路由到什么地方去了。经过查看源码我发现了,org.springframework.cloud.gateway.filter.LoadBalancerClientFilter这个filter中 对lb请求进行了处理,转换成真正的...

2018-09-12 10:57:04 30434 9

原创 spring cloud gateway自定义filter重定向

在自定义filter里返回值是一个Mono<Void> 如果业务处理发现数据有问题就要返回这时就有了第一种实现,retrun 一个Mono.empty();这种处理办法显然是有问题的,用户根本无从知道他的数据问题在哪。你返回Mono<Void>没有任何意义。只是让fliter停止了而已。这时就要去查看源码里怎么写的了,我发现了org.springfr...

2018-08-21 15:07:44 18533

原创 spring boot 1.5.x系统怎么使用spring boot admin 2.0

这篇文章已经迁移到https://blog.csdn.net/qq_37616173/article/details/83014952

2018-08-14 18:06:18 1491 11

原创 spring boot admin2.0上手

首先创建一个springboot项目基于2.x  pom文件如下 作为spring boot admin服务端&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema...

2018-08-14 17:58:49 625

原创 spring cloud gateway简单构件

gateway网关用来分配路由,实现负载均衡启动gateway创建一个简单的springboot2.x项目,这里不做介绍gateway pom.xml &lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="htt...

2018-07-16 17:18:56 1335

原创 oracle存储过程中 使用游标做循环封装数据集

需求是 双11活动结束后根据活动id 给参与的用户发京东E卡券,每个用户无论参与多少次 只发一个。这时就存在一个查到很多个用户符合条件 要一一发短信的结果集了。create or replace procedure "PRO_SEND_SMS_ECARD" ISno_result exception; -- 定义游标 cursor c_acc is SELECT

2017-11-13 15:22:20 1221

原创 使用js实现复制功能

首先下载 复制文件所需的js文件https://github.com/zenorocha/clipboard.js点击这里下载源码然后写测试 复制我的这段代码,将js文件引入进来        function-target                 Copy    点击按钮复制内容

2017-09-22 14:59:36 751

原创 (快排实例)查询一个数组中第n大的元素

package cyd;/** * 查询一个数组中第n大的元素 * 借用了快速排序的思想, * 我先选定一个标定值 然后将数组等分小于这个数的放在左边 大于的放在右边 这时标定值的位置是正确的 我们将它返回去 跟我们的n比较 * 如果返回值大于n我们 就只需要查左边的数据 如果小于n 就只需要查右边的数据 然后递归求解 即可 * * 只需要O(2n) 的时间复杂度 就能查

2017-09-20 15:31:06 663

原创 两种O(nlogn)级别的排序,归并排序和快速排序

最近重新学习了算法中的排序算法,相较于几个O(n^2)级别的排序算法(冒泡排序,选择排序,插入排序,希尔排序等) O(nlogn)级别的排序算法有普遍更快的速度,相对于O(n^2)级别的排序算法来说也更难理解。下面我把我最近学习这两个排序的想法说一下。归并排序:归并排序就是将数组不断的等分,等分到一组只有一个数,然后向上合并,例如第一次合并只有自己 就直接合并,然后就会变成两两一组 这时就有大

2017-09-20 15:23:38 325

原创 redis计数器解决用户同一时间多次提交

思路分析:    由于用户网速以及其他原因,前端的js限制没有起作用,所以要在后端加判断。由于并发量还算比较大,所以不采用线程锁。    思路1:        在数据库表格中添加唯一索引            例如:将userId 和 createTime 绑定成一组唯一索引。如果这两个值同时相同,不予许插入。         

2017-08-30 16:43:13 1792

原创 zTree异步加载数据,默认展开全部节点

zTree异步加载数据,默认展开全部节点 案例 可以重复使用

2017-05-10 20:52:16 16315

jenkins.war

最新版jenkins.war包,现在jenkins站点下载很慢上传之

2020-04-29

aspectjweaver-1.6.10.jar

aspectjweaver-1.6.10.jar

2017-08-23

空空如也

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

TA关注的人

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