随笔分类 - java
摘要:[toc] # 什么是SPI `SPI(Service Provider Interface)`是 JDK 提供的一套用来被第三方实现或者扩展的接口,它可以用来启用框架扩展和替换组件。 SPI的作用就是为这些被扩展的API寻找服务实现。 # SPI和API的使用场景 API (Application
阅读全文
摘要:[toc] `Dubbo官网`:https://cn.dubbo.apache.org/zh-cn/index.html 什么是垃圾(Garbage)? 这里的垃圾 指的是 在程序运行过程中没有任何指针指向的对象,即`不再被使用的对象`。 如果不及时清理这些对象(垃圾),这些对象将会占用程序内存,无法被其他对象使用,严重时可能导致内存溢出。
阅读全文
摘要:微信开发java SDK https://gitee.com/binary/weixin-java-tools <dependency> <groupId>com.github.binarywang</groupId> <artifactId>(不同模块参考下文)</artifactId> <ver
阅读全文
摘要:[toc] # 一、JDK 8 版本下 JVM 对象的分配、布局、访问(概述) ## 1、对象的创建过程 ### (1)前言 Java 是一门面向对象的编程语言,程序运行过程中在任意时刻都可能有对象被创建。开发中常用 new 关键字、反射等方式创建对象, JVM 底层是如何处理的呢? ### (2)
阅读全文
摘要:[toc] # 一、JVM 基本认识 ## 1、虚拟机 与 JVM - **虚拟机(Virtual Machine)** 可以理解为一台虚拟的计算机,实际是一款软件,用来执行一系列虚拟的计算机指令 可以分为:系统(硬件)虚拟机、程序(软件)虚拟机 - **系统(硬件)虚拟机** 系统虚拟机是一个可以
阅读全文
摘要:前言 配合嵌入式数据库使用,比如H2,sqlite嵌入式关系型数据,很香! pom <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> <
阅读全文
摘要:jdk为11 import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.nio.file.Files; impor
阅读全文
摘要:获取系统默认动态库加载路径:System.out.println(System.getProperty("java.library.path"));(实际上就是PATH环境变量的目录列表),既只需要将动态库放在列表中的任意一个目录下即可使用System.loadLibrary(libraryName
阅读全文
摘要:OAuth 2.0 是目前最流行的授权机制,用来授权第三方应用,获取用户数据。 这个标准比较抽象,使用了很多术语,初学者不容易理解。其实说起来并不复杂,下面我就通过一个简单的类比,帮助大家轻松理解,OAuth 2.0 到底是什么。 一、快递员问题 我住在一个大型的居民小区。 小区有门禁系统。 进入的
阅读全文
摘要:OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文对OAuth 2.0的设计思路和运行流程,做一个简明通俗的解释,主要参考材料为RFC 6749。 一、为什么会出现OAuth 为理解OAuth的适用场合,举一个假设的例子。 有一个"
阅读全文
摘要:一、简介 为其它对象提供一种代理,以控制对这个对象的访问;代理对象就类似生活中的中介;归属于结构型设计模式。 优点: 代理模式能将代理对象与真实被调用的目标对象分离;一定程度上降低了系统的耦合程度,易于扩展;代理可以起到保护目标对象的作用; 增强目标对象的职责 缺点: 代理模式会造成系统设计中类的数
阅读全文
摘要:一、Seata 介绍 github 官网 1、简介 Seata是一款开源的分布式事务解决方案,致力于提供高性能与简单易用的分布式事务服务,为用户提供了 AT、TCC、SAGA 和 XA 几种不同的事务模式: AT模式:无侵入式的分布式事务解决方案,适合不希望对业务进行改造的场景,但由于需要添加全
阅读全文
摘要:方式一 import java.util.HashMap; /** * @author JHL * @version 1.0 * @since : JDK 11 */ public class AjaxResult extends HashMap<String, Object> { private
阅读全文
摘要:GitHub地址 pom <dependency> <groupId>cn.smallbun.screw</groupId> <artifactId>screw-core</artifactId> <version>1.0.5</version> <scope>test</scope> </depe
阅读全文
摘要:【POM】 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <gro
阅读全文
摘要:1.@Component注解将ThreadPoolUtil注入spring容器 2.容器启动后会首先执行@PostConstruct注解的initProcessorThreadPool方法,该方法初始化线程池配置 3.CountDownLatch count = new CountDownLatch
阅读全文
摘要:package World; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java
阅读全文
摘要: 
浙公网安备 33010602011771号