前言 源码分析我认为主要有两个作用:满足好奇心,我想每一个有追求的人都不会满足于仅仅做一个API Caller实现功能就好,我们也想知道它到底是怎么实现的;借鉴与升华,当我们明白了一个类的设计原理,在一定的情境下我们可以…
标签:后端开发
聊一聊让我蒙蔽一晚上的各种常量池
在写之前我们先来看几个问题,假如你对这些问题已经很懂了的话,那大可不用看这篇文章,如果不大懂的话,那么可以看看我的想法。 问题1: public static void main(String[] args){ Stri…
玩转算法面试之链表
206 Reverse Linked List 反转链表。 一般遇到这种题,入门的大概思路是利用栈存储,然后再反向弹出赋值更新(改变链表中的值),不过这种思路是错误的。 那我先把头结点指向Null? 错,因为这样我们就拿…
C++雾中风景12:聊聊C++中的Mutex,以及拯救生产力的Boost
笔者近期在工作之中编程实现一个Cache结构的封装,需要使用到C++之中的互斥量Mutex,于是花了一些时间进行了调研。(结果对C++标准库很是绝望…)最终还是通过利用了Boost库的shared_mutex解决了问题。…
MyBatis实战(二)-一级缓存原理解析
1 概论 每当我们使用MyBatis开启一次和数据库的会话,MyBatis会创建出一个SqlSession对象表示一次数据库会话 在对数据库的一次会话中,我们有可能会反复地执行完全相同的查询语句,如果不采取一些措施的话,…
扒一扒 EventServiceProvider 源代码
有了之前的《简述 Laravel Model Events 的使用》https://mp.weixin.qq.com/s/XrhDq1S5RC9UdeULVVksoA,大致了解了 Event 的使用。 今天我们就来扒一扒…
Oracle 11g数据库安装和卸载教程
tags: Oracle Oracle11g的安装教程 同时解压缩两个zip文件,生成一个database文件夹,进入到database文件夹,点击setup 去掉安全更新的选项,直接下一步 选择创建和配置数据库,点击下…
IDEA使用
tags: IDEA IDEA常用设置 在我们第一眼看见IDEA是这个样子的: 显示工具条 我们要显示工具条!,两个按钮哦 黑色主体 我们要黑色的主题,白色的太low了! 调整字体大小 现在的字体太小了,我要鼠标滑轮+c…
Maven就是这么简单
tags: Maven 什么是Maven Maven是一个采用纯Java编写的开源项目管理工具, Maven采用了一种被称之为Project Object Model (POM)概念来管理项目,所有的项目配置信息都被定义…
分布式系统关注点——仅需这一篇,吃透「负载均衡」妥妥的
本文长度为3426字,预计读完需1.2MB流量,建议阅读9分钟。 上一篇《分布式系统关注点——初识「高可用」》我们对「高可用」有了一个初步认识,其中认为「负载均衡」是「高可用」的核心工作。那么,本篇将通过图文并茂的方…
jmx的垃圾回收器次数揭秘
对于jmx提供的垃圾回收器的次数,很多人的疑问点都是老年代的回收次数是否等于FGC的次数。下面我们就围绕这个问题来进行分析。 jmx的提供以及用法 api介绍 public interface GarbageCollec…
JVM--一文读懂垃圾回收
与其他语言相比,例如c/c++,我们都知道,java虚拟机对于程序中产生的垃圾,虚拟机是会自动帮我们进行清除管理的,而像c/c++这些语言平台则需要程序员自己手动对内存进行释放。 虽然这种自动帮我们回收垃圾的策略少了一定…