![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
coderflyYRJ
好好写代码,偶尔打游戏,不久你会发现,游戏好简单。。。。。。
展开
-
java动态代理之CGLib代理运用指南
1.1 CGLiib代理 CGLib代理主要涉及spring-core-4.xjar包中的三个类:Enhancer,MethodInterceptor和MethodProxy。其中MethodInterceptor是spring自带的拦截接口,可以通过实现该接口,定义intercept方法拦截。而Enhancer是spring自带的类,通过字节码技术动态创建子类实例。代理类具体代码如下: package designMode; import designCommon.PerfomanceMonit原创 2021-02-07 21:40:31 · 143 阅读 · 2 评论 -
java设计模式——单例模式运用指南
目录 1.单例模式定义 2.具体创建 3.优化 4.其他场景 1.单例模式定义 确保一个类只有一个实例,并提供全局访问点 2.具体创建 根据定义,我们可以想到创建一个静态私有实例,一个私有构造器,和一个公有的静态方法就可以简单的实现这个模式。具体代码如下: 这种方法的优点:在多线程环境下,也能保证实例唯一。 缺点:同步会降低性能,同步一个方法可能会降低100倍性能,不能用在频繁运行的地方。 3.优化 3.1双重检查加锁 ...原创 2021-01-26 22:33:58 · 119 阅读 · 0 评论 -
手写springAOP之动态代理
1.1 jdk动态代理 JDK的动态代理主要涉及java.lang.reflect包中的两个类:Proxy和InvocationHandler.其中,InvocationHandler是一个接口,可以通过实现该接口定义横切逻辑,并通过反射机制调用目标类的代码,动态地将横切逻辑和业务逻辑编织在一起。而Proxy利用InvocationHandler动态创建一个符合某一个接口实例,生成目标类的代理对象。具体代码如下: 实际代码: (1)实现InvocationHandler接口 (2...原创 2021-01-20 21:51:04 · 94 阅读 · 0 评论