![](https://img-blog.csdnimg.cn/2020011414532577.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java
从Java 基础开始 ,杂食。
太%阳@鸟
这个作者很懒,什么都没留下…
展开
-
JSON.toJSONString 空对象也可以转化为JSON字符串
通过阿里巴巴 fastjson json 空对象转json null ,导入maven依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.23</version>转载 2022-04-18 11:25:39 · 1593 阅读 · 0 评论 -
Dubbo 服务治理无注册中心 学习
Dubbo 服务治理节点说明节点角色说明Provider暴露服务的服务提供方Consumer调用远程服务的消费方Registry服务注册与发现的注册中心Monitor统计服务的调用次数和调用时间的监控中心Container服务运行容器调用关系说明服务容器负责启动,加载,运行服务提供者。服务提供者再启动是,向注册中心注册自己提供的服务。服务消费者在启动时,向注册中心订阅自己所需的服务。注册中心返回服务提供者地址列表给消费者,如果有变更,原创 2021-05-25 13:55:19 · 222 阅读 · 0 评论 -
NIO三件套☞Buffer缓冲区
Buffer 缓冲区缓冲区其实就是一个容器对象,在NIO 中,所有的数据用缓冲区处理的。在读取数据时,它是直接读取到缓冲区中的,写数据也是直接入到缓冲区。在NIO 中,每一种基本类型都具有一个对应的缓冲区,最常见的就是ByteBuffer。通过上面的图可以看出来,每个缓冲区都存在hb 的一个不同类型的数组,这个就是用来存储数据, 在他的父类Buffer 有 mark ,position ...原创 2020-04-10 18:51:16 · 115 阅读 · 0 评论 -
JAVA 并发机制的底层实现原理之synchronized
synchronized 在多线程并发中一直是元老级角色,在java SE 1.6 中为了减少获取锁和释放锁引入了偏向锁、轻量级锁、以及重量级锁。synchronized 实现同步基础...原创 2020-03-29 23:10:01 · 112 阅读 · 0 评论 -
JAVA 并发机制的底层实现原理之volatile
1 、volatile 的应用在多线程并发中volatile 是为了保证共享数据变量的可见性。就是说当两个线程需要同时修改一个共享变量的时候,另外一个线程能够读取到这个修改的值。 并且volatole 会比synchronized 的使用更加的使用成本低,不会导致上下文切换和调度。2 、 volatile 的原理如果一个变量被声明为 volatile Java 线程内存模型确保所有的线程...原创 2020-02-03 17:55:56 · 102 阅读 · 0 评论 -
Spring Boot 整合 websocket 并且spring 注入
spring boot 项目搭建导入所需要的依赖 <!-- SpringBoot Web容器 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId&...原创 2020-01-28 14:58:01 · 713 阅读 · 0 评论 -
APP 对接 java 微信支付统一下单接口
统一下单时候的请求对象,需要把这个转为xml 文件格式所以需要在pom.xml 文件中导入<dependency> <groupId>com.thoughtworks.xstream</groupId> <artifactId>xstream</artifactId> <version>1.4.10&...原创 2020-01-13 17:18:17 · 763 阅读 · 0 评论 -
ArrayList LinkedList 解析
首先看一下 ArrayList、 Vector、 LinkedList 的结构图接口与实现类名实现继承ArrayListList 、RandomAccess、CloneableAbstractListVectorList 、RandomAccess、CloneableAbstractListLinkedListList、Deque 、Cloneab...原创 2019-12-11 22:29:30 · 99 阅读 · 0 评论 -
集合 类图
原创 2019-12-04 15:51:56 · 206 阅读 · 0 评论 -
23种设计模式——工厂模式
为什么要有设计模式?设计模式是为了更好的解决问题,提升代码的可读性,可扩展性,维护成本,复杂的业务问题。每一个模式都有自己的名字,通常用一两个词来描述,可以根据模式的问题、特点、解决方案、功能和效果来命名。模式名称(PatternName)有助于我们理解和记忆该模式,也方便我们来讨论自己的设计。...原创 2019-09-17 22:53:27 · 72 阅读 · 0 评论 -
Thread进阶 (线程锁)
线程锁为什么需要线程锁?对于多个线程同时执行一个相同的操作就会对数据进行错误操作、导致线程不安全。实现等待和唤醒机制。线程锁的作用就是当某一个线程拿到这个锁的时候其他线程是无法拿到这把锁,就不会对于数据的操作出现数据偏差。对于多个线程锁的实现实现锁之前必须要有两个条件(1、共享 2、互斥)加锁的对象必定是多个线程共享的,获得锁的对象必定是互斥的,该线程获得锁其他线程不能获得锁的...原创 2019-09-10 16:59:24 · 904 阅读 · 0 评论