- 博客(23)
- 收藏
- 关注
转载 适配器、装饰器、代理模式
具体查看:https://www.cnblogs.com/zhangyinhua/p/7741932.html#_lab2_0_01.适配,改造已有的功能,使其可以用。2.装饰,在已有的功能上,添加其他功能,使其功能更加强大3.代理,代理也增加了其他的功能,但不是为了是主功能更加强大,是为了控制检测这个功能的合理,更有效的使用.比如切面的使用,给一个功能加上了日志和事物,目的是增加这个...
2019-01-09 15:24:48
188
原创 访问者模式
1.访问者模式,有两个主体,一个是访问者,一个是被访问者2.一般来说,这两个的联系太紧密,直接和在一起就可以了,为什么要分开。3.因为,对于被访问者来说,它比较固定,不会改变,所以抽出来,干净利落。而访问者可以拓展,可以被继承。4.访问者的visit方法的参数是被访问者,被访问者的accept方法的参数是访问者5.有一个容器来收纳被访问者者,提供添加被访问者和获取被访问者的方法...
2019-01-09 14:31:17
370
原创 观察者模式
1.涉及到两个对象,一个观察者和一个被观察者2.观察者的数量大于一,被观察者的数量是一3.观察者如何观察到被观察者有动作了?被观察者如何通知观察者4.二者的联系:观察者注册到被观察者,被观察者就有了观察者的引用集合,当被观察者有动作了,就遍历这个集合,让每个观察者调用自己的方法来获取信息。观察者构造函数的参数是被观察者,被观察者的属性一个观察者的集合。...
2019-01-08 16:31:19
180
原创 策略模式、责任链模式、状态模式
1.策略模式,举个例子,商场搞活动,满多少返现多少,你只能选择一种返现。有好多种返现活动,你只能选择其中一项优惠活动。其实做的就是单选题目。2.状态模式,每一个状态都知道下一个状态是什么,这是一个过程。你需要的就是设置一个开始的状态,它自动的执行下去。3.责任链模式。状态模式其实是一种写死的责任链模式,责任链模式明确知道下一个责任是谁,就可以写死。当不知道的时候,就需要环境来设置。举个例子...
2019-01-08 11:49:05
2394
原创 SingleTon模式
单例模式一言以蔽之:内存中要不存在,要不就最多存在一份所以,new 这个关键字只能出现一次。一次意味着,不是谁都可以new的,只能被程序new一次。说白了,对外是不可见的,构造函数私有,对内只能加载一次。屏蔽了构造函数,只能在加载一次上做文章。加载一次关键字是static和enum对于懒汉式和双重检查的单例,多线程还是会指令重排以及性能问题,是不安全的1.饿汉式的直接就...
2019-01-07 15:02:25
121
原创 Builder模式
1.简单的链式结构需要在外部类里新建了静态内部类,静态内部类的属性和外部类的属性是一样的,每个属性都有一个方法,而且返回静态内部类,这样就达到了链式设置属性的目的。还得有一个返回外部类的方法,调用外部类的全部构造参数的构造方法,new 一个外部类返回。2.builder模式主人说我要盖的房子,自己盖不了,没技术和能力呗;就请了了工程师,他设计的图纸,盖房子的步骤他了如执掌;工程师最后请...
2019-01-04 17:30:31
140
1
原创 mysql自动设置更新时间
当数据库新增和修改时,自动更新当前时间`update_time` timestamp NOT NULL ON UPDATE CURRENT_TIMESTAMP DEFAULT CURRENT_TIMESTAMP
2018-12-25 11:42:52
905
原创 java 锁和监视器理解
锁:类似平常门的锁,你获取这个锁,说明你有钥匙,可以进去这个屋子了,是你有权限进入了监视器:类似门里的房间,进去不代表你可以见真正的主人,你先得在候客厅等着,拍着队一大堆,有人说,候客厅来一个,你们中就出来一个,拿了一个工牌,跟者进入的会客厅,和主人谈完话了,你把工牌留下,就走了。这是等候客厅继续喊,继续拿牌来会见。锁和监视器主要是多线程而生的。两个线程修改共享信息,信息就会不准确。线...
2018-12-04 18:05:22
1909
1
原创 Java命令编译 打jar
一、没有包名的类编译 直接 javac NewTest.java运行 直接 java NewTestpublic class NewTest { public static void main(String[] args) { System.out.println("测试类"); }}二、有包名的类package test;
2018-04-28 17:18:42
207
原创 删除openjdk记录
1.su password2先查看 rpm -qa | grep java[liujie@localhost zookeeper]$ rpm -qa | grep javatzdata-java-2015e-1.el7.noarchpython-javapackages-3.4.1-6.el7_0.noarchjava-1.7.0-openjdk-headless-1.7.0
2018-01-25 16:37:43
243
原创 mysql 按 in的顺序返回数据
sql记录:select * from district_location where id in (110109,110107,110106,110102) order by field(id,110109,110107,110106,110102)
2018-01-25 16:37:32
2262
转载 maven 可选依赖和排除依赖
maven的 依赖的 标签 exclusion>和optional> optional 【翻译:可选择的; 随意的,任意的; 非强制的; 选修科目】 是可选依赖 设置为true 比如要喝水,自己拿自己的杯子喝水,别人要喝, 就得拿他自己的杯子打水喝水。水是被依赖的,没人都得重新依赖一次,
2017-11-16 11:45:46
464
原创 java函数按值传递和按引用传递
1参数为基本类型时,传入的是这个值的一份拷贝,修改不会对原值起作用2.参数是引用类型时,传入的是这个引用的一份拷贝,有两个引用同时只向堆里的实例,无论哪个修改都会修改实例的数据
2017-09-20 14:03:31
234
转载 静态代码块
1.先加载类,静态代码块一起加载2.如果new实例,按顺序执行构造代码块,然后执行构造函数3.函数里的代码块,按顺序执行package name;public class Hello {{System.err.println("构造代码块1");}public Hello() {System.err.println("构造函数");};{
2017-09-19 17:40:33
301
转载 Linux命令top单个进程内存翻译
VIRT:virtual memory usage 1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等 2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量 RES:resident memory usage 常驻内存 1、进程当前使用的内存大小,但不包括swap out 2、包含
2017-07-21 10:43:17
412
转载 Linux命令top的cup参数翻译
us: is meaning of "user CPU time"sy: is meaning of "system CPU time"ni: is meaning of" nice CPU time"id: is meaning of "idle"wa: is meaning of "iowait" hi:is meaning of "hardware Interrupt Request"si
2017-07-21 10:29:17
432
原创 Mysql语句执行顺序
01. ----》FROM02.-----》ON03.-----》JOIN04.-----》WHERE05.-----》GROUP BY06.-----》WITH 这个有意思可以对聚合过的结果再次聚合07.-----》HAVING 对分组结果进行过滤08.-----》SELECT09.-----》DISTINCT10.-
2017-07-19 15:49:08
223
原创 Solr分片命令
1.创建集合qfy,分片一个,两个副本http://10.143.79.85:8080/solr/admin/collections?action=CREATE&name=qfy&numShards=1&replicationFactor=22.删除集合qfyhttp://10.143.79.85:8080/solr/admin/collections?action=DELETE&na
2017-07-19 15:14:03
904
原创 Solr集群配置文件上传
1.Tomcat为服务器部署solr2. sorl.xml文件修改为tomcat的Ip和Port3.Tomcat注册zookeeper 3.1.apache-tomcat-7.0.69\bin\catalina.sh 3.2.添加JAVA_OPTS="-DzkHost=10.143.47.16:2181,10.143.47.17:2181" 3.3 累
2017-07-19 14:56:00
769
原创 Mysql函数记录
-- 1.INSTR(srt,str) 函数,得到字符第一次出现所在的位置,位置从1开始SELECT INSTR('1234',"3") -- 3-- 2.SUBSTRING(str,num) 截取字符串,从索引位置截取,包括索引位置,位置从1开始SELECT SUBSTRING('123',2) -- 23 -- 3. CONCAT(str,...)
2017-07-19 14:40:50
235
原创 web.xml监听器实现原理
1.Tomcat启动创建servlet容器,即servletContext2.servletContext创建servletContextEvent对象,即事件对象3.调用新建的监听器的初始化话方法,并传入事件对象4.在新建的监听器里写要在容器启动时的作业
2017-07-19 14:07:13
697
原创 HashMap死循环记录
0.jdk1.71.查看HashMap的源码,了解其结构和实现原理2.单线程的时候,不会造成死循环3.多线程的时候,当两个线程都在扩容的时候,一个 线程挂起,另一个已经完成,挂起的那个在扩容的时候会和第二个线程的数据死循环4.死循环,原因。可能主主存和缓存的运营。每个线程都有自己的缓存,entry的e和next指针都在缓存里。当一个线程完成扩容,entry的顺序已经倒置,因为顺序变...
2017-07-19 14:02:31
220
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人