自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (2)
  • 收藏
  • 关注

原创 1 线程池-手写线程池

手写线程池,线程池分析

2022-09-05 17:14:19 679 1

原创 工具类-Enum自动生成

Enum类自动生成

2023-01-29 16:20:21 1261

原创 4 ThreadLocal-TransmittableThreadLocal源码分析

TransmittableThreadFactory 源码分析

2022-09-22 21:15:04 343

原创 3 ThreadLocal-手写TransmittableThreadLocal

手写 TTL

2022-09-19 09:41:14 198

原创 2 ThreadLocal-InheritableThreadLocal

InheritableThreadLocal

2022-09-18 23:36:17 154

原创 3 线程池-扩展

线程池的一些业务扩展实现

2022-09-05 23:05:59 249 1

原创 2 线程池-ThreadPoolExector分析

ThreadPoolExecutor分析

2022-09-05 23:04:01 166

原创 MQ面试问题汇总

rocketMQ

2022-08-23 21:18:47 168

原创 1 ThreadLocal-原理分析

ThreadLocal 原理分析

2022-08-23 15:37:13 153

原创 mysql面试问题汇总

mysql面试问题汇总

2022-08-23 15:31:22 219

原创 线程池面试问题汇总

线程池面试汇总

2022-08-23 10:16:43 151

原创 Redis面试问题汇总

Redis面试问题汇总

2022-08-23 10:11:05 193

原创 6 Spring ApplicationListener 总结版

Spring ApplicationListener总结

2022-08-10 20:01:40 211

原创 5 Spring ApplicationListener 扩展版

Spring ApplicationListener EventListener

2022-08-10 11:31:14 234

原创 4 Spring ApplicationListener 问题版

Spring ApplicationListener失效

2022-08-09 15:48:32 415

原创 3. Spring ApplicationListener源码版

ApplicationEvent源码分析

2022-08-09 00:02:15 192

原创 2. Spring ApplicationListener进阶版

Spring ApplicationListener 进阶版

2022-08-07 18:22:58 189

原创 1. Spring ApplicationListener 基础版

ApplicationListener 简单使用范例

2022-08-07 16:57:21 124

原创 3 代理-动态代理-CGLIB

代理模式什么是代理模式设计模式中,代理模式是我们经常说到的,也是我们经常使用。代理模式:为一个对象(被代理类、委托类)提供一个替身(代理对象),用来控制被代理对象的访问控制,被代理的对象可以是远程的对象、创建开销大的对象、需要安全控制的对象。现实中常见的代理模式:租房/买房中介、明星的经纪人等。为什么要用代理模式中介隔离作用:在某些情况下,一个使用者不想或者不能直接引用一个被代理对象,而代理类对象可以在使用者和被委托对象之间起到中介的作用,其特征是代理类和委托类实现相同的接口。开闭原则,增加功

2021-04-19 17:44:13 125

原创 2 代理-动态代理-JDK

动态代理考虑到静态代理的缺点,如果系统能自动生成代理类,我们只需要考虑相关代理功能的实现,是最好的。实现动态代理有两种方式:所有的目标类都有一个共同的父类(接口),这样代理对象只需要实现接口,通过多态的形式,内部持有目标对象,这样就可以通过代理对象对外暴露相关方法了。这就是JDK动态代理的思想,缺陷是目标对象必须有个父类接口。不计较目标对象,只要给目标对象,创建一个对象继承目标对象,针对目标对象中需要业务代理的方法,进行代理业务,实际功能是调用父类(目标对象)的方。这就是cglib。没有缺点,什么目

2021-04-19 17:42:43 76

原创 1 代理-静态代理

静态代理

2021-04-19 17:41:07 123

原创 业务数据-自动翻译工具-第一版

背景因为涉及业务开发,经常遇到一些id需要翻译成名称,例如:“机构id”翻译为“机构名称”,“用户id”翻译为“用户名称”,以及一些业务id需要翻译为业务名称。经常遇到大量的重复代码填写。常用List<VoucherWarehouse> list(); Paging<VoucherWarehouse> paging(); List<VoucherDelivery> list(); Paging<VoucherDelivery> paging()

2021-03-09 20:31:23 226

原创 业务数据-自动翻译工具-第二版

前言当你做业务内容开发时,数据库数据转化为人类数据,例如:机构id=》机构名称,用户Id=>用户名称。你是否受够了,转化功能,不同业务都需要重写一遍。下面可以看看,我自己写的自动翻译工具。什么是自动翻译工具翻译工具就是用来解决上述痛点,同时实现一次定义多处使用。通过AOP思想对接口进行拦截,自动触发数据转换和数据组装。主要思想自动翻译工具,就是利用Spring AOP思想,对接口进行拦截,针对指定的对象,自动获取数据库数据,再主动调用用户定义的翻译者,获取人类数据,最后在自动填充。代码结构

2021-03-02 01:08:37 784 2

原创 java多线程:5.4 锁-Lock

java lock包由于Synchronized存在不少缺陷,因此jdk1.5之后,提供了Locks包,有ReentrantLock(可重入锁),ReadWriteLock(读写锁,可以获取读锁和写锁)。简单示例public class ReentrantLockkTest { public static void main(String[] args) { final Resourc...

2018-12-26 09:46:25 208

原创 java多线程:5.3 自旋锁

自旋锁自旋锁,也是java中的一种锁,但是这个锁的实现原理,与sychronized不一样的。自旋锁从字面意义理解,就是当前线程一直循环获取锁,不达目的不罢休。自旋锁就是通过代码进行while循环判断,直到获取锁成功,才进行下一步操作。自旋锁分类自旋锁分为两大类:1 有序自旋锁,2 无序自旋锁,即获取锁的顺序是否按照先到先得,有序自旋锁会维护一个链路,记录请求线程的先后顺序。其中有序自旋锁...

2018-12-02 18:20:52 531

原创 java多线程:5.2 synchronized锁

synchronized商品说到锁的种类中,提到synchronized加锁机制。前面通过线程间的通信,我们提到过,当线程wait和notify时,需要获取该对象的监视器,而获取监视器的操作就是synchronized,其实synchronized获取的监视器也可以看做锁,其实线程间的通信也是可以看做,多线程访问统一资源,即:访问一个变量,表明可以执行了。通过synchronized解决Sys...

2018-12-02 16:11:10 106

原创 java多线程:5.1 锁-基础

为什么加锁:当单线程的时候,无论访问什么资源,都不需要考虑锁的问题,但是当多个线程访问同一个资源,就会发生很多千奇百怪的事,为了保证资源访问时的唯一性,需要对访问资源的线程进行限制,这就是锁的由来。锁加在什么地方访问限制加在什么地方?如果加在资源本身的话,对资源来说也是一种冗余,而且使代码更加耦合,因此我们需要把访问限制独立出来,单独使用一个对象进行访问限制,这就是为什么加锁需要有一

2018-12-02 12:40:11 101

原创 java多线程:4 线程间通信

线程间的通信:主要是多个线程间有依赖,需要进行消息的沟通,例如:搬运工搬运10号货物, 需要9号货物先搬走, 10号货物才能搬走,因此这两个线程需要进行通信,告知情况。线程间通信通过Object对象中的wait(当前线程等待)和notify(通知其他线程)方法,我们就可以建立一个多线程之间的通信。public class MyThread { //公共变量,用来标明通信 ...

2018-11-26 10:19:54 155

原创 3. java缓存-线程内缓存guava cache

guava cache的缓存结构常用的guava cache缓存根据上图中的缓存框架,我们常用的一些缓存实例有:LocalManualCache和LocalLoadingCache,两者唯一的区别就是LocalLoadingCache extends LocalManualCache implements LoadingCache&amp;amp;amp;lt;K,V&amp;amp;amp;gt;接口。LocalManualCache...

2018-09-25 16:12:03 2920

原创 4. java缓存-线程外缓存

线程外缓存线程外缓存主要是:缓存数据在同一的服务器中,不在运行服务器中(也可以说不在jvm运行内存中)。通过通信对外提供数据的查询,一般都是通过集群的形式,对外提供数据缓存。常见的有:ehcache、memcache、redis,最常用的有:memcache、redis。进程外缓存的作用解决高并发、频繁的数据访问带来的性能问题,通过内存存储频繁访问的数据,降低数据获取的时间成本。memca...

2018-09-25 16:06:03 412

原创 5. java缓存-ehcache概述

guava cache的缓存结构 常用的guava cache缓存根据上图中的缓存框架,我们常用的一些缓存实例有:LocalManualCache和LocalLoadingCache,两者唯一的区别就是LocalLoadingCache extends LocalManualCache implements LoadingCache范例手动加载缓存手动加载缓存:需要提...

2018-09-18 16:51:18 150

原创 2. java缓存-线程内缓存

进程内缓存进程内缓存的概述就不说了,可以查看[java缓存概述](https://blog.csdn.net/u010652576/article/details/82590189%20java%E7%BC%93%E5%AD%98-%E5%A4%9A%E7%BA%A7%E7%BC%93%E5%AD%98%E6%A6%82%E8%BF%B0)主要说说常见的进程内缓存,这里分为两类:自定义进...

2018-09-10 17:34:01 1186 3

原创 1. java缓存-多级缓存概述

java缓存什么是缓存Cache是高速缓冲存储器一种特殊的存储器子系统,其中复制了频繁使用的数据以利于快速访问。凡是位于速度相差较大的两种硬件/软件之间的,用于协调两者数据传输速度差异的结构,均可称之为Cache8。从开发的角度看,缓存就是用来减少我获取数据时间的东西。为什么要使用缓存列表展示不同存储方式,获取缓存的时间 获取路径 耗时 ...

2018-09-10 15:20:25 2240

原创 java多线程:3 线程状态

线程状态和转化

2017-11-18 17:01:49 235

原创 java多线程:2 创建线程

创建线程

2017-11-18 16:04:27 206

原创 java多线程:1进程和线程

线程与进程的区别

2017-11-18 14:50:08 193

原创 class文件的加载、初始化、实例化

class文件的加载、初始化、实例化

2017-11-05 15:45:44 1102

原创 三种方式实现java单例

java单例模式 内部类模式的原理

2017-11-05 15:19:17 233

原创 spring bean的生命周期

spring bean的声明周期,spring bean创建的接口暴漏

2017-10-26 14:35:01 397

原创 4 代理-补充

java 动态代理 jdk动态代理

2017-10-25 17:38:44 260

translate.zip

translate.zip

2021-03-09

使用CXF搭建webService服务

使用cxf搭建webService,客户端通过接口进行调用

2013-12-23

空空如也

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

TA关注的人

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