自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 浅谈Java堆内内存、堆外内存、直接内存、用户空间和内核空间

浅谈Java堆内内存、堆外内存、直接内存、用户空间和内核空间

2022-03-29 23:19:40 5089 2

原创 Java对象的分配原则

很多人都知道Java运行时区域分为5大块,其中堆内存为对象的存储空间。那大家是否所有对象都存于堆中呢?大家是否知道Java中对象的分配原则呢?

2022-03-21 13:07:31 1259

原创 dubbo 负载均衡之最小活跃度的实现原理

1.概括dubbo 2.7 中提供了4中负载均衡算法,分别为:随机、轮询、一致性哈希、最小活跃度,分别对应于源码文件的 RandomLoadBalance.class、RoundRobinLoadBalance.class、ConsistentHashLoadBalance、LeastActiveLoadBalance.class。2.使用对于dubbo中负载均衡的配置使用也是很简单,只需要在对应的服务提供方或消费端配置即可,两边都配置优先取消费端,配置方式如下服务提供端/** *

2021-08-08 23:58:20 303

原创 彻底解决二分查找算法死循环问题

在常见算法中,二分查找法属于比较简单的算法,只要每次取中间值比较就行。但是有一个比较坑逼的地方就是,中间的取值必须要恰当,一不小心就会陷入死循环问题出不来,本人也踩过几次坑。有一天我突发奇想突然想到了一种彻底解决二分查找算法死循环的解决方法,废话不多说看代码: public int binSearch(int[] arr, int num) { // 判断不为空 if (arr.length == 0) return -1; // 首位置和最后一个

2021-07-13 22:18:20 1158

原创 Spring Bean 的生命周期

Spring中 bean 的生命周期其实不难记,总体划分可以分为 实例化——属性赋值(依赖注入)—— 初始化——使用——销毁 5个步骤。而其中 属性赋值 和 初始化阶段,又可分为多个步骤,包括 属性赋值阶段的 各个Aware 接口调用,初始化阶段的 前置处理和后置处理。我们可以直接看到 Spring源码中 BeanFactory 类的注释:(直接在 BeanFactory 接口上就可以看到注释) * <p>Bean factory implementations should su..

2021-05-15 15:07:59 86

原创 Spring 是如何解决循环依赖问题的

1.循环依赖首先我们要知道什么是Spring的循环依赖问题。假如我们有两个bean,A 和 B。他们的代码简单如下:@Beanpublic class A { @Autowire private B b;}@Beanpublic class B { @Autowire private A a;}也就是需要在A中注入B,在B中注入A,那么Spring在创建A的时候会出现这种现象:创建A实例后,在依赖注入时需要B,然后就去创建B,这时候发现又需要...

2021-04-24 20:42:08 9058 5

原创 浅谈 Mybatis源码的执行过程

Mybatis是一个半自动化的ORM框架,相对于Hibernate来说,是轻量级的,而且对于自定义sql有着非常友好的用户体验,使用也方便。现在我们来粗略探索下Mybatis是怎么帮助我们对数据库进行操作并映射的。...

2021-04-18 14:00:19 126

原创 Mybatis 之创建时的4个核心对象的生命周期

Mybatis 在执行数据库操作之前,先要有4个对象,分别是SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession以及对应直接操作增删改查的Mapper。其中,SqlSessionFactoryBuilder 首先通过 builder 方法,根据获得的配置文件创建一个 SqlSessionFactory 工厂,然后SqlSessionFactoryBuilder 就不需要了,之后每次需要需要...

2021-04-17 13:04:47 287 1

原创 CenOS7下给redis开启远程连接

CenOS下redis默认安装后是不开启远程连接的,只能本机连接。要开启远程连接需要做以下步骤:首先,打开redis启动指向的配置文件,默认是 redis.conf 文件,做以下修改bind 127.0.0.1改成#bind 127.0.0.1protected-mode yes改成protected-mode no然后关闭防火墙或者是防火墙打开6379端口的限制...

2020-01-12 21:07:26 166

原创 CenOS7环境下安装redis

在CenOS7下安装redis其实不难,以redis5.0.7为例,总共分为以下几步1.准备安装包先准备好redis5.0.7安装包,用xshell/xftp上传至CenOS7上或者直接用命令 wget+地址 下载redis也可以wget http://download.redis.io/releases/redis-5.0.7.tar.gz2.安装gccy...

2020-01-12 15:26:43 142

原创 Springboot+mybatis+druid的整合

最近的公司项目后端用到了Springboot框架,把阿里的druid作为数据源,采用mybatis+druid的方式,本人之前也是在这里踩了很多坑,因此感觉有必要出个博客来记录一下。首先,用druid最为数据源的好处就不多说了,灵活动态切换数据库是小case,更重要的是提供了健全的数据库监控机制和页面(号称目前最好的数据库连接池可不是简单说说),开始进入正题。首先创建Springboot项...

2019-05-22 21:02:44 516

原创 Springboot项目的搭建(分离出common父依赖)

随着项目前后端分离的推广,越来越多的企业开始注重在项目设计时,将项目进行前后端分离。所谓前后端分离,前端和后端区分开来,前端和后端都可以脱离于彼此单独运行,而后端则大多用Springboot,也就是此博文的重点。一、创建新项目首先需要新建一个Spring项目,可以用开发工具,例如eclipse、IntelliJ IDEA、STS等进行Spring项目的创建(这里省略),也可以直接上Spr...

2019-04-01 17:20:17 5997 2

原创 Error instantiating class xxx with... Cause: java.lang.NoSuchMethodException xxx.<init>()

很多新手用ssm框架开发项目都会遇到这个问题,写完实体类然后写dao之后,用junit单元测试来测试从数据库查询数据的时候发现报反射异常,原因是没有该初始化方法,而插入记录却是可以运行的。下边是我的实体类的代码异常信息:为什么会这样呢,因为当dao从数据库拿到文件后,就会默认用对应的实体类的默认无参构造方法创建对象再set进去,但是由于在实体类已经自定义了有参构造方法,无参构造方法被覆盖,因此就会...

2018-03-30 10:10:49 1298 1

Java Language Specification &amp;Java Virtual Machine Specification

前几天网上找 jls 和 jvms文档,发现居然有很多需要付费下载,特地去官网下载了放这里,以供大家免费下载。(文件为版本13 英文版,需要其他版本的直接上官网下载即可 https://docs.oracle.com/javase/specs)

2022-03-28

空空如也

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

TA关注的人

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