JAVA设计模式
JAVA道人
我宁愿做错,也不愿什么都不做.
展开
-
过滤器模式
本例中:target 是真正执行的操作.相当于controllerfilter是前置的过滤器targetpublic class Target { public void excute() { System.out.println("真正执行处理。。。。"); }}Filter 接口public interface Filter { public void excute();}两个实例public class LogFilter implements Filter{ @原创 2021-02-20 17:11:55 · 99 阅读 · 0 评论 -
阿里的优雅实现策略模式
加密接口/** * 加密 * @author Administrator * */public interface IEntry { public String entry(String body);}md5的子类import org.springframework.stereotype.Component;@Component("md5")public class EntryMd5 implements IEntry{ @Override public String原创 2021-02-20 15:00:33 · 203 阅读 · 0 评论 -
jms规范
定义:jms是java message service (JAVA消息服务)的规范,相当于jdbc。有一整套的接口。元素:jms元素由以下构成:jms提供者:消息中间件,比如activemqjms客户:连接消息中间件的客户端jms生产者:发送消息的客户jms消费者:接收消息的客户jms消息:消息载体对象jms队列:一旦被消费立即移出,因ack回复快慢,所以不严格按照顺序。jms主题:订阅主题接口:ConnnectFactory:连接工厂Connecti原创 2020-07-04 13:53:15 · 201 阅读 · 0 评论 -
JDK动态代理
各方面的知识来源都在说,jdk动态代理要求类要有接口。实际上跟类没关系,jdk动态代理代理的就是接口。最为典型的就是mybatis,我们可以看到Mapper接口明明没有实现方法,而实际上却走向了数据库操作,那么它就是对接口进行代理,增强了功能,不止增强了一点点,因为以前是接口根本就没有实现功能。jdk动态代理的核心类就是Proxy.接下来看个示例:1.接口类public inte...原创 2019-10-12 22:50:37 · 146 阅读 · 0 评论 -
cglib代理模式的简单demo
package 代理模式.cglib代理;import java.lang.reflect.Method;import org.springframework.cglib.proxy.Callback;import org.springframework.cglib.proxy.Enhancer;import org.springframework.cglib.proxy.Method...原创 2018-04-10 00:10:18 · 244 阅读 · 0 评论 -
策略设计模式
原代码:package 策略设计模式.old;public class Entry { public String entry(String content,String entryType){ if("md5".equals(entryType)){ return content+"md5加密"; } if("SHA256".equals(entryType)){ ...原创 2018-04-06 01:44:00 · 118 阅读 · 0 评论 -
CGLB
转自:https://blog.csdn.net/danchu/article/details/70238002什么是CGLIBCGLIB是一个强大的、高性能的代码生成库。其被广泛应用于AOP框架(Spring、dynaop)中,用以提供方法拦截操作。Hibernate作为一个比较受欢迎的ORM框架,同样使用CGLIB来代理单端(多对一和一对一)关联(延迟提取集合使用的另一种机制)。CGL...原创 2018-08-17 11:14:41 · 343 阅读 · 0 评论 -
简单的队列处理小demo
三个类.import java.util.concurrent.ConcurrentLinkedQueue;/** * 放入队列 * @author dmw * * 2018年9月27日 */public class MyProducer { private ConcurrentLinkedQueue<String> queue; public Concurr...原创 2019-07-02 16:30:42 · 200 阅读 · 0 评论 -
任务处理队列简单demo2
本篇在上篇的基础上进行扩展。可以用来处理一些单线程基本任务。比如发邮件,发短信等。具体业务请实现IHandler接口。package com;import java.util.concurrent.ConcurrentLinkedQueue;public class TaskConsumer<T> implements Runnable { private Co...原创 2019-07-02 16:30:25 · 112 阅读 · 0 评论