首页
学习
活动
专区
工具
TVP
发布

微信公号【Java技术江湖】

·
专栏成员
179
文章
177435
阅读量
38
订阅数
深入Java微服务之网关系列2:常见Java网关实现方案对比
前文我们已经了解了构建微服务的基础springboot,同时也能使用springboot构建服务。接下来我们就基于springboot聊一下springcloud。这个springcloud并不是一个特定的技术,它指的是微服务中一个生态体系。比如包括网关,注册中心,配置中心等。今天我们就先了解一下微服务网关,微服务网关有很多种我们这次采用现在主流的spring cloud gateway来讲解说明。 在微服务体系中,每个服务都是一个独立的模块都是一个独立运行的组件,一个完整的微服务体系是由若干个独立的服务组成,每个服务完成自己业务模块功能。比如用户服务提供用户信息相关的服务和功能,支付模块提供支付相关的功能。各个服务之间通过REST API或者RPC(以后讲)进行通信,并且一般我们微服务要做到无状态的通信。 我们实现微服务之后在一些方面也会带来不方便的地方,如果网页端或者app端需要请求修改送货地址,还有购物之后要付款在这个场景下:
程序员黄小斜
2022-02-13
1.2K0
深入Java微服务之网关系列1:什么是网关
近来,在想着重构一个新的产品。准备采用微服务的技术解决方案,来搭建基础设施框架。网关,是一个必不可少的组件。那么,网关到底是什么?
程序员黄小斜
2022-02-13
6150
Maven实战与原理分析(二):maven实战
由于 Java 的生态非常丰富,无论你想实现什么功能,都能找到对应的工具类,这些工具类都是以 jar 包的形式出现的,例如 Spring,SpringMVC、MyBatis、数据库驱动,等等,都是以 jar 包的形式出现的,jar 包之间会有关联,在使用一个依赖之前,还需要确定这个依赖所依赖的其他依赖,所以,当项目比较大的时候,依赖管理会变得非常麻烦臃肿,这是 Maven 解决的第一个问题。
程序员黄小斜
2021-12-23
6290
Java中的屠龙之术(二):如何方便快捷地生成.class文件
在之前的“Java中的屠龙之术:如何修改语法树”中,我们详细介绍了如何使用Javac源码提供的工具类来修改语法树。
程序员黄小斜
2021-12-14
7340
如果你想在Java中写一个Http客户端,你会选择哪一种方式?Okhttp vs Apache vs Jdk
目前JAVA实现HTTP请求的方法用的最多的有两种:一种是通过HTTPClient这种第三方的开源框架去实现。HTTPClient对HTTP的封装性比较不错,通过它基本上能够满足我们大部分的需求。
程序员黄小斜
2021-12-14
1.9K0
Java8特性详解 lambda表达式(二):流式处理中的lambda
要讲 Stream ,那就不得不先说一下它的左膀右臂 Lambda 和方法引用,你用的 Stream API 其实就是函数式的编程风格,其中的「函数」就是方法引用,「式」就是 Lambda 表达式。
程序员黄小斜
2021-12-13
7670
Java8特性详解 lambda表达式(一):使用篇
在 Java 8之前,一个实现了只有一个抽象方法的接口的匿名类看起来更像Lambda 表达式。下面的代码中,anonymousClass方法调用waitFor方法,参数是一个实现接口的Condition类,实现的功能为,当满足某些条件,Server 就会关闭。 下面的代码是典型的匿名类的使用。
程序员黄小斜
2021-12-13
4750
lombok中的builder注解居然是一种设计模式:让我们了解一下实用的“建造者模式”吧
lombok中的builder注解本质上是为你生成了一个构造器Builder类,通过这个类我们可以构造出带此注解的对象。本质上它实现了设计模式中一种经典的模式:建造者模式
程序员黄小斜
2021-12-10
8590
从Java的类加载机制谈起:聊聊Java中如何实现热部署(热加载)
ClassLoader.loadClass(...) 是ClassLoader的入口点。当一个类没有指明用什么加载器加载的时候,JVM默认采用AppClassLoader加载器加载没有加载过的class,调用的方法的入口就是loadClass(…)。如果一个class被自定义的ClassLoader加载,那么JVM也会调用这个自定义的ClassLoader.loadClass(…)方法来加载class内部引用的一些别的class文件。重载这个方法,能实现自定义加载class的方式,抛弃双亲委托机制,但是即使不采用双亲委托机制,比如java.lang包中的相关类还是不能自定义一个同名的类来代替,主要因为JVM解析、验证class的时候,会进行相关判断。
程序员黄小斜
2021-12-08
3.2K0
面试题:Spring 的循环依赖问题
# [Spring 的循环依赖问题](https://www.cnblogs.com/mghio/p/15024461.html)
程序员黄小斜
2021-12-06
5210
Java 中的屠龙之术:如何修改语法树?
来源:https://my.oschina.net/u/4030990/blog/3211858
程序员黄小斜
2021-11-24
1.2K0
@lombok注解背后的原理是什么,让我们走近自定义Java注解处理器
本文介绍了如何自定义Java注解处理器及涉及到的相关知识,看完本文可以很轻松看懂并理解各大开源框架的注解处理器的应用。
程序员黄小斜
2021-11-23
7500
超硬核的Java工程师分享,什么是Java?为什么我要做Java,我是如何学习Java的?
新手程序员通常会走入一个误区,就是认为学习了一门语言,就可以称为是某某语言工程师了。但事实上真的是这样吗?其实并非如此。
程序员黄小斜
2020-07-26
9880
如果说程序员的硬通货是技术,那么软技能是什么?
程序员往往一心扑在编程技术上面,学习编程语言,算法,网络,自己子领域相关的知识等等。这非常正确,也是作为coder的核心竞争力所在,姑且称之为“硬技能”吧。
程序员黄小斜
2020-06-24
5390
如何把代码写的更优雅,你需要这一份代码精进书单!
黄小斜写了一年多的代码,渐渐地代码量也上来了,但是,代码写的多就是好吗,简单的数量堆积似乎并不能起到太好的效果,毕竟我们CRUD写多了,也不怎么需要架构设计,甚至连个设计模式都不怎么需要用到。如何开始代码精进之路,其实有很多的过来人早就已经给出了答案,今天就给大家推荐几本帮你精进代码的优质书籍,走过路过可不要错过哦~
程序员黄小斜
2020-06-24
7430
你有一份新的C++书单,请注意查收!
C是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。
程序员黄小斜
2020-06-19
6040
学习设计模式,你需要这样一份书单!
《O'Reilly:Head First设计模式(中文版)》趋近完美,因为它在提供专业知识的同时,仍然具有相当高的可读性。
程序员黄小斜
2020-06-12
3480
学习设计模式,你需要这样一份书单!
《O'Reilly:Head First设计模式(中文版)》趋近完美,因为它在提供专业知识的同时,仍然具有相当高的可读性。
程序员黄小斜
2020-06-12
4000
​ 之前写过很多次关于Java学习指南、Java技术路线图的文章。
之前写过很多次关于Java学习指南、Java技术路线图的文章。但是总还是有小伙伴来问我,Java怎么学,项目怎么做,资源怎么找,真是让人头秃。
程序员黄小斜
2020-06-07
1.1K0
超硬核Java学习路线图+学习资源+实战项目汇总,看完以后不用再问我怎么学Java了!
于是这次黄小斜决定来一波狠的,把所有这些内容都整理起来,做成一份非常硬核的Java学习指南+路线图,一篇文章搞定Java学习,360度无死角(可能)如果你们喜欢这类硬核的文章,以后我也会继续这么硬核下去的!不要忘了分享噢。
程序员黄小斜
2020-05-29
8820
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档