- 博客(70)
- 资源 (22)
- 收藏
- 关注
原创 java中常见http client配置代理
工作用一个http client 去调用第三方的接口看起来很简单,但往往由于公司的网络安全要求,没法直接访问,需要配置一个代理才能连接外网,本篇给出三种常用的http client配置代理案例,使用时直接套用即可。 HttpURLConnectionRestTemplateWebClient总结HttpURLConnection这种方法用于纯java SE,但现在基本不用了,当前都是建立在框架的基础之上,所以只需要了解即可。//url为接口地址URL realUrl = new URL(url);
2022-10-24 06:45:47
2852
原创 vscode中Spring Boot Dashboard无法读取.env
vscode中使用Spring Boot Dashboard插件读取.env注意事项
2022-09-01 00:10:02
944
1
原创 逐步走向响应式编程(三)-常见函数式接口- Function<T, R>
函数式接口Function,此接口同样也位于 java.util.function包中,它的作用可以看作是消费者和生产者的结合,即消费某种原材料然后生产出某种产品
2022-07-18 00:00:00
940
11
原创 vim绝对常用命令
熟练掌握vim命令会大大提高工作效率,为此本博客分享了我在工作中常用到的命令,还有很多不常用的命令并没有列出来。命令不用则忘,所以大家在学习这些命令时一定要多用,用多了你也会被小伙伴们当作神一样看待。......
2022-07-11 00:00:00
558
10
原创 微服务架构整理-(十二、SpringCloud实战之Zuul网关)
Zuul是Netflix旗下的又一重要成员,是一个基于 JVM 路由和服务端的网关和负载均衡器,是一个提供路由、监控、弹性、安全等方面的服务框架
2022-07-04 00:00:00
355
9
原创 微服务架构整理-(十一、SpringCloud实战之OpenFeign)
OpenFeign是 Netflix 公司开发的一个声明式的 REST 调用客户端,其前身为Feign,Feign在2019年5月停止了更新,直接转为OpenFeign,OpenFeign继承了Feign的所有特性,并且在OpenFeign中可以使用SpringMvc的注解,使其在调用服务时更方便。..................
2022-06-27 00:00:00
622
15
原创 微服务架构整理-(十、SpringCloud实战之Hystrix [3])
当需要查看服务的状态时,不可能每都通过log来进行查看,Hystrix提供的表盘(Dashboard)功能主要用来监控服务的运行状态,通过它我们可以看到Hystrix的各项指标信息,从而快速发现问题进而采取措施。为了能够使用Hystrix 仪表盘功能,消费者需要配置/actuator/hystrix.stream接口,这样dashboard就可以监控此服务了。但根据微服架构的设计思想,Dashboard也需要单独设计成一个服务,供其他消费者使用,从而可以监控各消费者的状态。...
2022-06-20 00:00:00
413
23
原创 微服务架构整理-(九、SpringCloud实战之Hystrix [2])
对异常处理是使用注解`@HystrixCommand`完成的,当然也可以不使用此注解来完成,我们可以自定义一个机制处理超时,抛出异常等情况
2022-06-13 00:00:00
260
23
原创 微服务架构整理-(八、SpringCloud实战之Hystrix [1])
在微服务架构中,每个服务都是独立运行,服务与服务之间通过注册中心彼此发现和消费对方提供的服务,但是由于种种原因,可能存在如下问题:- 因网络原因服务的响应太慢- 某服务挂掉,还没有被踢除的情况下,导致访问请求一直得不到响应。当请求得不到响应,后续不断有新的请求到来时,就会出现请求堵塞的情况,一个服务的堵塞引起下一个服务的堵塞,当堵塞蔓延到整个系统时,导致大部分微服务都无法正常工作,从而导致整个系统崩掉,这就是微服务架构中的雪崩现象。为了解决这个问题,在微服务架构中产生了熔断机制
2022-06-06 00:00:00
322
17
原创 微服务架构整理-(七、SpringCloud实战之RestTemplate)
针对远程API,RestTemplate提供了GET,POST,PUT,DELETE四种请求,通过这些请求可以很轻松的访问远程服务。
2022-05-30 00:00:00
720
9
原创 微服务架构整理-(六、SpringCloud实战之Ribbon)
Ribbon是 Netflix 发布的开源项目,主要功能是提供客户端的软件负载均衡算法, 是 一 个基于 HTTP 和 TCP 的**客户端**负载均衡工具,这里可以理解成服务消费者端的负载均衡工具。SpringCloud对Ribbon进行了二次封闭,可以让开发人员通过**RestTemplate**(在注入时,直接在上方加入注解 **@LoadBalanced** 即可)的实例调用接口时,可以自动进行服务选择。
2022-05-22 00:00:00
325
9
原创 一篇学会java调用Keycloak Admin-cli User和Group Api
Keycloak admin-cli Api 可以方便的用于管理用户,组,角色等数据。本博客总结了一下如何管理用户和组的信息,希望能帮助有需要的同学
2022-05-15 16:33:26
1365
11
原创 逐步走向响应式编程(二)-常见函数式接口- Consumer<T>
java8提供的Consumer<T>也是一大常用接口,其功能正如其名,用于“消费”操作。此接口提供了两个方法,其中一个是待实现的方法accept,另一个是默认方法andThen。此接口主要用于对某数据进行处理,无需返回值的情景。
2022-05-14 15:11:39
550
原创 逐步走向响应式编程(一)-常见函数式接口- Predicate<T>
在了解函数式接口前,希望大家有一定的lamda表达式的基础,可以参考此博客。本文细说一下java8常见的函数式接口-Predicate,希望对大家有一定的帮助。本接口用的比较多,称之为断言接口,用于条件判断,其中唯一需要实现的方法为test(T t),其实现逻辑通常作为一个参数传到某个方法中。本人觉得可以这样去理解 Predicate,其实例是一个条件,条件是用来判断test(T t)中的参数是否成立,所以最终的关系是“条件.test(t)”。 源码解析案例分析test方法and 方法or 方法nega
2022-05-12 22:49:46
339
1
原创 maven 下载依赖源码
最近在开发过程,发现java项目中的依赖包源码没有导入,因此debug的过程中,跟踪变量问题寸步难行。查看了相关的maven文档,常用的有如下三种方式来下载源码: mvn 命令全局配置setting.xml使用maven-dependency-pluginmvn 命令下载源码时可以通过配置不同的参数来决定要不要下载java doc# 只下载源码mvn dependency:sources# 只下载java docmvn dependency:resolve -Dclassifier=javad
2022-05-01 13:46:45
5356
原创 我奶奶都能懂docker基本操作
docker是一个应用工具,应用通过docker可以生成一个打包好的镜像(image),通过此镜像可以生成多个容器(container),因此可以说docker是一个用来生成应用容器的引擎。)前言一直很少用docker,换了新单位,所有的部署都要基于docker,因此有机会对docker的基本操作做一个总结。本文适合docker入门者。何为dockerdocker是一个应用工具,应用通过docker可以生成一个打包好的镜像(image),通过此镜像可以生成多个容器(container),因
2022-05-01 12:54:23
251
原创 vs code 使用docker运行postgres
在前几日,通过docker run了一下postgres, 但是启动之后 ,后面的操作就不知道如何进行了,于是随笔简单记录一下。建议:vscode 中安装docker插件。vscode 中安装数据库连接插件。第一步:启动postgres containerdocker run --name some-postgres -v /postgres/postgresql:/var/lib/postgresql/data -e POSTGRES_PASSWORD=postgres -d -p 5432
2022-05-01 12:30:23
346
原创 Springboot 集成keycloak admin-cli api
Springboot 集成keycloak admin-cli api前言keycloak配置安装keycloak创建realm创建client配置角色Springboot 项目中的配置:spring-boot 配置文件配置文件映射类keycloak客户端配置类)前言本文适合有keycloak的基础的同学参考。语言: java框架: spring-boot运行环境: docker最近在做一个项目,使用keycloak作为鉴权服务,公司的安全策略要求keycloak本身提供的master re
2022-03-20 13:28:48
2406
1
原创 批处理修改windows IP
最近一直在现场忙于wms的调试与部署,很少写文,在此说句抱歉,自己的java系列我会抽时间更新的,希望能帮助更多的java初学者。在现场调试wms的时候,总是要在公网与内网之间切换,于时抽时间写了一个脚本,大家使用的时候注意两点。1,将注释的地方改成自己的信息2,运行此脚本时一定要以管理员的身份运行。@echo offecho IP Configuring,please select IP Type echo/color 1fecho ***************************
2021-09-28 23:48:47
649
1
原创 我奶奶都能懂java枚举类型
本不打算写枚举的,但最近在review同事的代码时,发现大家对枚举类型的使用不是很到位,当问他们枚举类型相关概念时,他们都不是很清楚,回答的是:用到的时候再去网上查一下。个人觉得,搞开发要有一个基础知识体系,这些知识要信手拈来。说实话,枚举类型用的不是很多,但是只要用到枚举的地方,必能提供代码的可读性。希望这篇博客能帮助基础薄弱的同学。示例的源码可以直接通过csdn下载,也可以通过git导出:https://github.com/igdnss/java_enum.git 定义结构使用普通用法枚举比较.
2021-07-12 00:00:07
1664
72
原创 颜值10分姐姐带我玩转java设计模式(内附照片)- 状态模式
先不说话,直接来张姐姐照片,称呼上官姐姐即可,希望上官姐姐能带飞原创不易,麻烦先三连,再细看,谢谢示例的源码可以直接通过csdn下载也可以通过git导出:https://github.com/igdnss/java_state.git设计模式共有23种,可以分为三大类:创建型模式,结构型模式,行为型模式。学好这三大类,基本可以闯荡整个武林了。创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、门面(外观)模
2021-07-05 00:00:14
658
66
原创 颜值10分姐姐带我玩转java设计模式(内附照片)- 门面模式
先不说话,直接来张姐姐照片,称呼包子姐姐即可,希望包子姐姐能带飞。原创不易,麻烦先三连,再细看,谢谢示例的源码可以直接通过csdn下载也可以通过git导出:https://github.com/igdnss/java_facade.git设计模式共有23种,可以分为三大类:创建型模式,结构型模式,行为型模式。学好这三大类,基本可以闯荡整个武林了。创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、门面(
2021-07-02 00:00:28
1032
67
原创 我奶奶都能懂java异常
前段时间考完OCA决定对java异常做一个总结,但一直被其他的知识点给占用了时间,于是一直托到今天。本篇博客继续从java的基础知识出发,希望能帮助大家。示例的源码可以直接通过csdn下载,也可以通过git导出:https://github.com/igdnss/java_exception.git 异常的概念异常的分类常见的异常异常的产生异常的传递异常的处理try catchtry catch finally多重catchtry finally声明异常(throws)抛出异常(throw)自定义异.
2021-06-27 00:08:34
2220
108
原创 我奶奶都能懂java泛型
从jdk 1.5就引入了java泛型,在平时工作中review兄弟们的代码发现很多地方泛型使用的都不够到wei,所以在这里打算将泛型的知识整理一下。示例的源码可以直接通过csdn下载也可以通过git导出:https://github.com/igdnss/java_generic-type.git@TOC为什么引用泛型什么时候使用泛型怎么使用泛型泛型类泛型方法泛型探险和补偿...
2021-06-18 00:01:52
1560
80
原创 欧美企业必备技能-Mockito
欧美企业做开发除了英语是必备技能之外,使用Mockito写unit test(单位测试)也是必备技能,毕业经历的四家外企,美企,德企,德企,瑞士企业,没有一家不写UT的,中间在一个私企过渡了一下,呵呵,UT是什么?最近,小伙伴们在写UT时遇到了各种问题,借此机会我对UT做一个总结,希望小伙伴们在写UT时不要绕弯路。示例的源码可以直接通过csdn下载也可以通过git导出:https://github.com/igdnss/java_mockito.git UnitTest 介绍Mockito介绍Un.
2021-06-16 00:02:57
401
51
原创 颜值10分姐姐带我玩转java设计模式(内附照片)- 代理模式
最近一直在看一些框架的源码,发现到最后很多地方都用到代理,尤其是动态代理。例如SpringData jpa中EntityManager的创建过程。在23种设计模式中有一种模式就是代理模式,这里打算对这种模式整理一下,并从源码的角度分析一下对象是如何生成出来的。个人觉得这个模式是23种当中最难的一种,深研究的话需要追述到jvm,这里尽量讲明白,不足之处希望大家指正。定义所谓的代理,就是中介,也就是说给目标对象提供一个代理(中介)对象,并由这个中介对象去控制对目标对象的引用。这样做的好处是:通过代理.
2021-06-07 00:20:18
5028
142
原创 我不愿进大厂
当看到这个标题时大家的想法可能是这个人太酸了,哈,可能吧,也许吧!技术达不到要求不是你愿不愿的问题,而是你能不能的问题!这么说的话还很在理!工作快七年了,技术上有一定的沉淀,当然达到大厂的要求可能还有点距离,但是,不是够不着,踮个脚,问题还是不大的。首先说一下自身条件,曾经成绩一般的学霸一枚,数学最低分18(初二),开始学习是初二下学期,初二之前做的事可能是很多人大学才做的。从开始学习的那天起就开启了学霸模式,就没有停过,一直到现在!目前光头,头发大二开始掉的,跟本行业关系不大,因为大学太拼了,那时高.
2021-06-04 00:02:07
741
48
原创 我奶奶都能懂java子类构造方法
定义应用总结我相信 学过java的人都使用过构造方法,那为什么博主还要写构造方法呢?前段时间博主考了一个Oracle举办的考试,发现构造方法中有一些小坑,特别是子类构造方法,平时工作很容易忽略的,所以在这里打算总结一下这里的小坑。定义我们在学习java的时候,老师都会说一个类主要有三部分组成,成员变量,成员方法,构造方法。既然这个方法叫构造,那是构造什么的?一个类是对某类事物的高度抽象,那么如何得到这个高度抽象的事物具体的一个实体呢,这里就需要使用构造方法,也就是说构造方法是用来创建对象用的。在.
2021-05-30 17:43:18
1633
21
原创 我奶奶都能懂java8特性-日期时间
java每个版本的更新,都会给java使用者极大的方便。其中,java8中的日期时间较之前的版本的进步的不是一个数量级。借着这次针对java8基础的考试,本博客对两个版本的日期时间进行比较。
2021-05-30 12:49:20
1535
72
原创 OCA java8 (1Z0-808)考试经验分享
最近一直忙着OCA考试,说到这考试,想必大家很多都没有听过,对的,我也是第一次听,它是Oracle官方推出来的针对java8基础的专项考试,从我个人观点这个考试没什么太大的用处,但是对刚学java的来说可能是个不错的选择,熟悉一下java基础知识,但知识点覆盖不是很全面,基本都是java8的一些特性,外加一些java通用特性。说了这么多废话,下面说一下我的备战经验。其实,也没什么备战经验,呵呵,这里应该会被骂成狗了,明明说的是经验分享,结果却没什么干活。哈哈,这里总结两个字:刷题,如果再多点经验的话,那就
2021-05-21 22:42:04
2200
18
原创 windows命令行运行jar包一小坑
最近在客户现场调试时,由于客户用的是windows服务器,因此打算将jar包打成服务,但在调试过程中为了方便调试直接运行bat脚本(注:脚本内容是java -jar abc.jar),即相当于直接命令行java -jar abc.jar ,调试是方便了,但前端时不时的报504错误,明显服务有问题,看了一下doc控制台,正常的log输出没有了,程序不动了,随便按一个键又能正常运行,即进程阻塞了,处于假死状态,需要一事件进行触发。研究了半天,终于搞定了。doc窗口上设置一下属性,步骤如下doc窗口标题栏上右
2021-03-20 17:39:17
965
4
原创 微服务架构整理-(五、SpringCloud实战之Eureka)
SpringCloud 介绍它是一系列框架的有序集合,它利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、负载均衡、断路器、数据监控等,都可以用SpringBoot的开发风格做到一键启动和部署。Spring Cloud并没有重复造轮子,它只是将目前各家公司开发的比较成熟 ,经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂,易部署和易维护的分布式系统开发工具包。针对Spri
2021-03-13 18:07:50
349
6
原创 Linux部署前端脚本
在没有自动化部署的情况下,每次提交完代码,都要在服务器上拉代码,然后build,很麻烦,这里写了一个小脚本完成拉代码,build,实时打印log的功能,命名为run.sh,每次上传代码后,进入到指定的文件夹直接 ./run.sh就可以了。脚本echo "====== When build complete,Press Ctrl+C to exit the log console======"git pullsudo npm run build > frontend.log &tail
2021-03-09 19:50:34
307
3
原创 低级错误之遗漏@Restmapping标签
前两天在写一个超级简单的小demo,3分钟搭完所有的一切,个人感觉100%没问题,可就是运行不起来。根据后端的提示,知道request请求没有过拦截器这一层异常:Resolved [org.springframework.web.method.annotation.MethodArgumentTypeMismatchException:Failed to convert value of type 'java.lang.String' to required type 'java.lang.Long'
2021-03-09 07:38:36
838
3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人