Java架构筑基

84 篇文章
16 人订阅

全部文章

本人秃顶程序员

面试官:你竟然不晓得Mybatis用了哪些设计模式?

虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更...

380
本人秃顶程序员

Spring依赖注入:@Autowired,@Resource和@Inject区别与实现原理

1130
本人秃顶程序员

资深程序员总结:彻底理解Spring容器和应用上下文

有了Spring之后,通过依赖注入的方式,我们的业务代码不用自己管理关联对象的生命周期。业务代码只需要按照业务本身的流程,走啊走啊,走到哪里,需要另外的对象来协...

940
本人秃顶程序员

面试官:为什么mysql不建议执行超过3表以上的多表关联查询?

前段时间在跟其他公司DBA交流时谈到了mysql跟PG之间在多表关联查询上的一些区别,相比之下mysql只有一种表连接类型:嵌套循环连接(nested-loop...

1330
本人秃顶程序员

SpringMVC知识点梳理—够你面试掰活的(超详细)

Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进...

350
本人秃顶程序员

详解Spring Boot的应用限流

比如最近就有个这样的需求,我作为客户端要向kafka生产数据,而kafka的消费者则再源源不断的消费数据,并将消费的数据全部请求到web服务器,虽说做了负载(有...

810
本人秃顶程序员

JVM优化Java代码时都做了什么?

JVM 在对代码执行的优化可分为运行时(runtime)优化和即时编译器(JIT)优化。运行时优化主要是解释执行和动态编译通用的一些机制,比如说锁机制(如偏斜锁...

1060
本人秃顶程序员

优秀的Java程序员必须掌握的8项代码编程技巧!

Java是目前最流行的编程语言之一——它可以用来编写Windows程序或者是Web应用,移动应用,网络程序,消费电子产品,机顶盒设备,它无处不在。

950
本人秃顶程序员

算法之常见排序算法-冒泡排序、归并排序、快速排序

对于编程中琳琅满目的算法,本人向来是不善此道也不精于此的,而说起排序算法,也只是会冒泡排序。还记得当初刚做开发工作面试第一家公司时,面试官便让手写冒泡排序(入职...

800
本人秃顶程序员

Docker容器的未来,将继续充分利用Linux功能

Michael Crosby是如今最有影响力的Docker容器开发人员之一,他帮助领导containerd的开发以及担任Open Container Initi...

1320
本人秃顶程序员

谈谈对分布式事务的一点理解和解决方案

最近,工作中要为现在的老系统做拆分和升级,刚好遇到了分布式事务、幂等控制、异步消息乱序和补偿方案等问题,刚好基于实践结合个人的看法记录一下一些方案和思路。

2200
本人秃顶程序员

一篇文章彻底搞懂Java虚拟机

虚拟机:指以软件的方式模拟具有完整硬件系统功能、运行在一个完全隔离环境中的完整计算机系统 ,是物理机的软件实现。常用的虚拟机有VMWare,Visual Box...

1170
本人秃顶程序员

阿里P8架构师浅析如何避免在Java中检查Null语句

通常,在Java代码中处理null变量、引用和集合很棘手。它们不仅难以识别,而且处理起来也很复杂。事实上,在编译时无法识别处理null的任何错误,会导致运行时N...

690
本人秃顶程序员

详解后端Java面试——OOA/D,UML,和XML

统一建模语言(Unified Modeling Language,UML)又称标准建模语言;常用图包括:用例图,静态图(包括类图、对象图和包图),行为图,交互图...

760
本人秃顶程序员

【面试必备】透过源码角度一步一步带你分析 ArrayList 扩容机制

细心的同学一定会发现 :以无参数构造方法创建 ArrayList 时,实际上初始化赋值的是一个空数组。当真正对数组进行添加元素操作时,才真正分配容量。即向数组中...

300
本人秃顶程序员

详解Java—ServiceLoader之源码分析

其构造方法是一个private方法,不对外提供,在使用时我们需要调用其静态的load方法,由其自身产生ServiceLoader对象:

330
本人秃顶程序员

使用Java 10的var类型推断的几个注意点!

不加选择地应用var可能会让代码不容易理解,因为模糊了类型这个概念,而人类是依据类型分类进行逻辑思考的,这样就使事情变得更糟,如果使用得当,var可以帮助改进良...

1060
本人秃顶程序员

如何理解Docker镜像分层?且听百度高级研发工程师细细道来

所以,能称作 base 镜像的通常都是各种 Linux 发行版的 Docker 镜像,比如 Ubuntu, Debian, CentOS 等。

920
本人秃顶程序员

深入理解《单例模式》之源码分析

执行这段代码会发现o1<>o2,这就破坏了单例。 为什么呢?罪魁祸首就是如下代码,它是反射的newInstance()的底层实现。

1040
本人秃顶程序员

面试题丨Java的类/实例初始化过程

昨天看到群里面有人分享了一道题目,我答错了,于是趁机了解了下Java的类/对象初始化过程:

1080

扫码关注云+社区

领取腾讯云代金券