自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

转载 适配器、装饰器、代理模式

具体查看:https://www.cnblogs.com/zhangyinhua/p/7741932.html#_lab2_0_0 1.适配,改造已有的功能,使其可以用。 2.装饰,在已有的功能上,添加其他功能,使其功能更加强大 3.代理,代理也增加了其他的功能,但不是为了是主功能更加强大,是为了控制检测这个功能的合理,更有效的使用.比如切面的使用,给一个功能加上了日志和事物,目的是增加这个...

2019-01-09 15:24:48 193

原创 访问者模式

1.访问者模式,有两个主体,一个是访问者,一个是被访问者 2.一般来说,这两个的联系太紧密,直接和在一起就可以了,为什么要分开。 3.因为,对于被访问者来说,它比较固定,不会改变,所以抽出来,干净利落。而访问者可以拓展,可以被继承。 4.访问者的visit方法的参数是被访问者,被访问者的accept方法的参数是访问者 5.有一个容器来收纳被访问者者,提供添加被访问者和获取被访问者的方法 ...

2019-01-09 14:31:17 380

原创 观察者模式

1.涉及到两个对象,一个观察者和一个被观察者 2.观察者的数量大于一,被观察者的数量是一 3.观察者如何观察到被观察者有动作了?被观察者如何通知观察者 4.二者的联系:观察者注册到被观察者,被观察者就有了观察者的引用集合,当被观察者有动作了,就遍历这个集合,让每个观察者调用自己的方法来获取信息。观察者构造函数的参数是被观察者,被观察者的属性一个观察者的集合。...

2019-01-08 16:31:19 189

原创 策略模式、责任链模式、状态模式

1.策略模式,举个例子,商场搞活动,满多少返现多少,你只能选择一种返现。有好多种返现活动,你只能选择其中一项优惠活动。其实做的就是单选题目。 2.状态模式,每一个状态都知道下一个状态是什么,这是一个过程。你需要的就是设置一个开始的状态,它自动的执行下去。 3.责任链模式。状态模式其实是一种写死的责任链模式,责任链模式明确知道下一个责任是谁,就可以写死。当不知道的时候,就需要环境来设置。举个例子...

2019-01-08 11:49:05 2405

原创 SingleTon模式

单例模式 一言以蔽之:内存中要不存在,要不就最多存在一份 所以,new 这个关键字只能出现一次。 一次意味着,不是谁都可以new的,只能被程序new一次。说白了,对外是不可见的,构造函数私有,对内只能加载一次。 屏蔽了构造函数,只能在加载一次上做文章。 加载一次关键字是static和enum 对于懒汉式和双重检查的单例,多线程还是会指令重排以及性能问题,是不安全的 1.饿汉式的直接就...

2019-01-07 15:02:25 129

原创 Builder模式

1.简单的链式结构 需要在外部类里新建了静态内部类,静态内部类的属性和外部类的属性是一样的,每个属性都有一个方法,而且返回静态内部类,这样就达到了链式设置属性的目的。还得有一个返回外部类的方法,调用外部类的全部构造参数的构造方法,new 一个外部类返回。 2.builder模式 主人说我要盖的房子,自己盖不了,没技术和能力呗;就请了了工程师,他设计的图纸,盖房子的步骤他了如执掌;工程师最后请...

2019-01-04 17:30:31 145 1

原创 mysql自动设置更新时间

当数据库新增和修改时,自动更新当前时间 `update_time` timestamp NOT NULL ON UPDATE CURRENT_TIMESTAMP DEFAULT CURRENT_TIMESTAMP 

2018-12-25 11:42:52 920

原创 java 锁和监视器理解

锁:类似平常门的锁,你获取这个锁,说明你有钥匙,可以进去这个屋子了,是你有权限进入了 监视器:类似门里的房间,进去不代表你可以见真正的主人,你先得在候客厅等着,拍着队一大堆,有人说,候客厅来一个,你们中就出来一个,拿了一个工牌,跟者进入的会客厅,和主人谈完话了,你把工牌留下,就走了。这是等候客厅继续喊,继续拿牌来会见。 锁和监视器主要是多线程而生的。两个线程修改共享信息,信息就会不准确。 线...

2018-12-04 18:05:22 1919 1

转载 记录监视器和锁

记录文章 http://www.cnblogs.com/ygj0930/p/6561667.html

2018-10-29 22:12:31 211

原创 Java命令编译 打jar

一、没有包名的类 编译 直接  javac  NewTest.java 运行 直接 java NewTest public class NewTest {     public static void main(String[] args) {         System.out.println("测试类");     } } 二、有包名的类 package test;

2018-04-28 17:18:42 213

原创 删除openjdk记录

1.su  password 2先查看 rpm -qa | grep java [liujie@localhost zookeeper]$ rpm -qa | grep java tzdata-java-2015e-1.el7.noarch python-javapackages-3.4.1-6.el7_0.noarch java-1.7.0-openjdk-headless-1.7.0

2018-01-25 16:37:43 248

原创 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 2279

转载 maven 可选依赖和排除依赖

maven的 依赖的 标签  exclusion>和optional>   optional  【翻译:可选择的; 随意的,任意的; 非强制的; 选修科目】                是可选依赖                设置为true   比如要喝水,自己拿自己的杯子喝水,别人要喝,                就得拿他自己的杯子打水喝水。水是被依赖的,没人都得重新依赖一次,

2017-11-16 11:45:46 473

原创 java函数按值传递和按引用传递

1参数为基本类型时,传入的是这个值的一份拷贝,修改不会对原值起作用 2.参数是引用类型时,传入的是这个引用的一份拷贝,有两个引用同时只向堆里的实例,无论哪个修改都会修改实例的数据

2017-09-20 14:03:31 244

转载 静态代码块

1.先加载类,静态代码块一起加载 2.如果new实例,按顺序执行构造代码块,然后执行构造函数 3.函数里的代码块,按顺序执行 package name; public class Hello { { System.err.println("构造代码块1"); } public Hello() { System.err.println("构造函数"); }; {

2017-09-19 17:40:33 307

转载 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 423

转载 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 444

原创 Mysql语句执行顺序

01. ----》FROM 02.-----》ON 03.-----》JOIN 04.-----》WHERE 05.-----》GROUP BY 06.-----》WITH              这个有意思可以对聚合过的结果再次聚合 07.-----》HAVING         对分组结果进行过滤 08.-----》SELECT 09.-----》DISTINCT 10.-

2017-07-19 15:49:08 231

原创 Solr分片命令

1.创建集合qfy,分片一个,两个副本 http://10.143.79.85:8080/solr/admin/collections?action=CREATE&name=qfy&numShards=1&replicationFactor=2 2.删除集合qfy http://10.143.79.85:8080/solr/admin/collections?action=DELETE&na

2017-07-19 15:14:03 915

原创 Solr集群配置文件上传

1.Tomcat为服务器部署solr 2. sorl.xml文件修改为tomcat的Ip和Port 3.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 782

原创 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 242

原创 web.xml监听器实现原理

1.Tomcat启动创建servlet容器,即servletContext 2.servletContext创建servletContextEvent对象,即事件对象 3.调用新建的监听器的初始化话方法,并传入事件对象 4.在新建的监听器里写要在容器启动时的作业

2017-07-19 14:07:13 705

原创 HashMap死循环记录

0.jdk1.7 1.查看HashMap的源码,了解其结构和实现原理 2.单线程的时候,不会造成死循环 3.多线程的时候,当两个线程都在扩容的时候,一个 线程挂起,另一个已经完成,挂起的那个在扩容的时候会和第二个线程的数据死循环 4.死循环,原因。可能主主存和缓存的运营。每个线程都有自己的缓存,entry的e和next指针都在缓存里。当一个线程完成扩容,entry的顺序已经倒置,因为顺序变...

2017-07-19 14:02:31 232

空空如也

空空如也

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

TA关注的人

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