摘要: 现在,高并发,高流量已成为行业的热点,并且各种高并发的技术也是层出不穷,如论是官方文档还是市面上的各种书籍,我们在阅读的时候都会遇到一些专业名词,理解这些专业名词之后,才能更好的理解内容。 一、同步与异步 介绍: 同步和异步通常来形容一次方法调用。 解释一:同步方法调用一旦开始,调用者必须等到方法的 阅读全文
posted @ 2017-05-23 21:59 罗志均 阅读(231) 评论(0) 推荐(0)
摘要: 去tomcat官网http://tomcat.apache.org/,左侧栏Apache Tomcat下的Maven Plugin,点进去选择最新版本Version 2.2 通过介绍可知,使用tomcat的maven插件有两种配置方式: 第一种:在pom.xml文件的<build></build>中 阅读全文
posted @ 2017-05-23 21:58 罗志均 阅读(1474) 评论(0) 推荐(0)
摘要: 一、HTTP协议 最近看了一些网络通信方面的书籍,研究了一下 HTTP 和 TCP/IP,有了一些新的收获和理解,在这里做个归纳和总结。 (1)什么是HTTP协议 HTTP (HyperText Transfer Protocol,超文本传输协议) 是一种通信协议,是指计算机网络中两台计算机之间进行 阅读全文
posted @ 2017-05-23 21:58 罗志均 阅读(842) 评论(0) 推荐(0)
摘要: 线程池的好处 1. 降低资源的消耗 通过重复利用已创建的线程降低线程创建和销毁所造成的消耗 2. 提高响应速度 当任务到达时,任务可以不需要等到线程创建就能立即执行 3. 提高线程的可管理型 线程是稀缺资源,如果无限制地创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一分配、调优 阅读全文
posted @ 2017-05-23 21:57 罗志均 阅读(177) 评论(0) 推荐(0)
摘要: 引言 在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。它在某些情况下比synchronized 阅读全文
posted @ 2017-05-23 21:57 罗志均 阅读(223) 评论(0) 推荐(0)
摘要: 起因 周末休息两天, 今天新的一个上班周, 可能有点周末综合征, 星期一早上来到公司之后, 打开Eclipse却不想做什么, 那就看看技术帖子, 逛逛博客吧; 浏览了很多博客园上的帖子,发现很多博客主都定制了自己的博客样式, 也有很多就直接应用了博客园推荐的皮肤, 本人之前也是直接应用博客园的推荐的 阅读全文
posted @ 2017-05-23 21:57 罗志均 阅读(1564) 评论(0) 推荐(0)
摘要: 依赖倒置原则 定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。 问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类 阅读全文
posted @ 2017-05-23 21:56 罗志均 阅读(186) 评论(0) 推荐(0)
摘要: 里氏替换原则 肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑。其实原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。 定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 阅读全文
posted @ 2017-05-23 21:56 罗志均 阅读(104) 评论(0) 推荐(0)
摘要: 单一职责原则 定义: 不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。 解决方案: 遵循单一职责原则。分别建立两个类T1、T2,使T 阅读全文
posted @ 2017-05-23 21:56 罗志均 阅读(165) 评论(0) 推荐(0)
摘要: 迪米特法则 定义:一个对象应该对其他对象保持最少的了解。 问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。 解决方案:尽量降低类与类之间的耦合。 迪米特法则(Law of Demeter, LoD):一个软件实体应当尽可能少地与其他实体发生相互作用。 如果一 阅读全文
posted @ 2017-05-23 21:55 罗志均 阅读(193) 评论(0) 推荐(0)
摘要: 接口隔离原则 定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。 问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。 解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分 阅读全文
posted @ 2017-05-23 21:55 罗志均 阅读(165) 评论(0) 推荐(0)
摘要: 开闭原则 定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。 问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。 解决方案:当软件需要变化时,尽量通过扩展软 阅读全文
posted @ 2017-05-23 21:54 罗志均 阅读(153) 评论(0) 推荐(0)
摘要: JNDI 是什么 JNDI是 Java 命名与目录接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之一,不少专家认为,没有透彻理解JNDI的意义和作用,就没有真正掌握J2EE特别是EJB的知识。 那么,JNDI到底起什么作用? 要了解JND 阅读全文
posted @ 2017-05-23 21:53 罗志均 阅读(419) 评论(0) 推荐(0)
摘要: 作用 CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行 简介 CountDownLatch是在java1.5被引入的,存在于java.util.concurrent包下,它允许1个或者多个线程一直等待,直到一组操作执行完成。 CountDo 阅读全文
posted @ 2017-05-23 21:52 罗志均 阅读(216) 评论(0) 推荐(0)
摘要: 作用 Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源。 简介 Semaphore也是一个线程同步的辅助类,可以维护当前访问自身的线程个数,并提供了同步机制。使用Semaphore可以控制同时访问资源的线程个数,例如,实现一个文件允许的并 阅读全文
posted @ 2017-05-23 21:51 罗志均 阅读(161) 评论(0) 推荐(0)
摘要: 作用 CyclicBarrier是一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point),才继续执行。 简介 CyclicBarrier 的字面意思是可循环使用(Cyclic)的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可 阅读全文
posted @ 2017-05-23 21:51 罗志均 阅读(148) 评论(0) 推荐(0)
摘要: 简介 Exchanger(交换者)是一个用于线程间协作的工具类。Exchanger用于进行线程间的数据交换。它提供一个同步点,在这个同步点两个线程可以交换彼此的数据。这两个线程通过exchange方法交换数据, 如果第一个线程先执行exchange方法,它会一直等待第二个线程也执行exchange, 阅读全文
posted @ 2017-05-23 21:50 罗志均 阅读(736) 评论(0) 推荐(0)
摘要: 在Java中,使用线程来异步执行任务。Java线程的创建与销毁需要一定的开销,如果我们为每一个任务创建一个新线程来执行,这些线程的创建与销毁将消耗大量的计算资源。同时,为每一个任务创建一个新线程来执行,这种策略可能会使处于高负荷状态的应用最终崩溃。 Java线程既是工作单元,也是执行单元。从JDK1 阅读全文
posted @ 2017-05-23 21:50 罗志均 阅读(427) 评论(0) 推荐(0)
摘要: 相信我们在面试Java的时候总会有一些公司要做笔试题目的,而Java类的加载和对象创建流程的知识点也是常见的题目之一。接下来通过实例详细的分析一下。 实例问题 实例代码 Parent类 1 package mytest.javaBase; 2 3 public class Parent { 4 in 阅读全文
posted @ 2017-05-23 21:49 罗志均 阅读(159) 评论(0) 推荐(0)
摘要: 一、Dubbo是什么 官方定义 DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。 详细理解,就是 Dubbo是阿里 阅读全文
posted @ 2017-05-23 21:49 罗志均 阅读(420) 评论(0) 推荐(0)
摘要: 一. Servlet 生命周期 Tomcat 与 Servlet 是如何工作的: 步骤: 二. Servlet工作原理: 1、首先简单解释一下Servlet接收和响应客户请求的过程,首先客户发送一个请求,Servlet是调用service()方法对请求进行响应的,通过源代码可见,service()方 阅读全文
posted @ 2017-05-23 21:48 罗志均 阅读(173) 评论(0) 推荐(0)
摘要: 一. Hibernate中对象的三种状态 1. 瞬时状态(transient) 当我们通过Java的new关键字来生成一个实体对象时,这时这个实体对象就处于自由状态,此时该对象只是通过JVM获得了一块内存空间,还并没有通过Session对象的save()方法保存进数据库,因此也就还没有纳入Hiber 阅读全文
posted @ 2017-05-23 21:47 罗志均 阅读(3313) 评论(0) 推荐(0)
摘要: 单例模式 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需 阅读全文
posted @ 2017-05-23 21:47 罗志均 阅读(120) 评论(0) 推荐(0)
摘要: 工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 介绍 意图:定义一个创建对象的接口, 阅读全文
posted @ 2017-05-23 21:47 罗志均 阅读(116) 评论(0) 推荐(0)
摘要: 抽象工厂模式 抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂 阅读全文
posted @ 2017-05-23 21:47 罗志均 阅读(109) 评论(0) 推荐(0)
摘要: 适配器模式 适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再 阅读全文
posted @ 2017-05-23 21:46 罗志均 阅读(103) 评论(0) 推荐(0)
摘要: 装饰器模式 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。 我们通过下面的实例来演示 阅读全文
posted @ 2017-05-23 21:46 罗志均 阅读(137) 评论(0) 推荐(0)
摘要: 建造者模式 建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。 介绍 意图:将一个复杂的构建与其表 阅读全文
posted @ 2017-05-23 21:45 罗志均 阅读(126) 评论(0) 推荐(0)
摘要: 迭代器模式 迭代器模式(Iterator Pattern)是 Java 和 .Net 编程环境中非常常用的设计模式。这种模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。 迭代器模式属于行为型模式。 介绍 意图:提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。 阅读全文
posted @ 2017-05-23 21:45 罗志均 阅读(117) 评论(0) 推荐(0)
摘要: 观察者模式 当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。 介绍 意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 主要解决: 阅读全文
posted @ 2017-05-23 21:44 罗志均 阅读(161) 评论(0) 推荐(0)
摘要: 策略模式 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。 介绍 意图:定义一系 阅读全文
posted @ 2017-05-23 21:44 罗志均 阅读(116) 评论(0) 推荐(0)
摘要: 外观模式 外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。 这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。 介绍 意图: 阅读全文
posted @ 2017-05-23 21:43 罗志均 阅读(126) 评论(0) 推荐(0)
摘要: 模板模式 在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。 介绍 意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变 阅读全文
posted @ 2017-05-23 21:43 罗志均 阅读(98) 评论(0) 推荐(0)
摘要: 代理模式 在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。 在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。 介绍 意图:为其他对象提供一种代理以控制对这个对象的访问。 主要解决:在直接访问对象时带来的问题,比如说:要访问的对 阅读全文
posted @ 2017-05-23 21:43 罗志均 阅读(128) 评论(0) 推荐(0)
摘要: 命令模式 命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。 介绍 意图:将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参 阅读全文
posted @ 2017-05-23 21:42 罗志均 阅读(126) 评论(0) 推荐(0)
摘要: 1.单例模式(Singleton): 保证一个类仅有一个实例,并提供一个访问它的全局控制点. 比如在加载配置文件时, 可使用该模式. 2.工厂模式(Factory): 定义一个用以创建对象的接口, 让子类决定实例化哪个类. 当遇到需要根据某个前提条件创建不同的类实现时, 会实用工厂模式. 3.抽象工 阅读全文
posted @ 2017-05-23 21:42 罗志均 阅读(468) 评论(0) 推荐(0)
摘要: 概述 垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,目前已经十分成熟了。 jvm 中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理,因此, 阅读全文
posted @ 2017-05-23 21:42 罗志均 阅读(98) 评论(0) 推荐(0)
摘要: 1、什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向 阅读全文
posted @ 2017-05-23 21:42 罗志均 阅读(146) 评论(0) 推荐(0)
摘要: 一. 数据库中事务的四大特性(ACID) ⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。 ⑵ 一致性(Consistenc 阅读全文
posted @ 2017-05-23 21:41 罗志均 阅读(150) 评论(0) 推荐(0)
摘要: 本次分享大纲 一、消息队列概述 消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题。实现高性能,高可用,可伸缩和最终一致性架构。是大型分布式系统不可缺少的中间件。 目前在生产环境,使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,Met 阅读全文
posted @ 2017-05-23 21:41 罗志均 阅读(149) 评论(0) 推荐(0)
摘要: Redis 快的主要原因有: 第一、二点不细讲,主要围绕第三点采用多路 I/O 复用技术来展开。 多路 I/O 复用模型是利用 select、poll、epoll 可以同时监察多个流的 I/O 事件的能力,在空闲的时候,会把当前线程阻塞掉,当有一个或多个流有 I/O 事件时,就从阻塞态中唤醒,于是程 阅读全文
posted @ 2017-05-23 21:40 罗志均 阅读(676) 评论(0) 推荐(0)
摘要: 早在JDK 1.2的版本中就提供Java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 功能:当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量 阅读全文
posted @ 2017-05-23 21:40 罗志均 阅读(98) 评论(0) 推荐(0)
摘要: 本文是大型网站架构系列:消息队列(二),主要分享JMS消息服务,常用消息中间件(Active MQ,Rabbit MQ,Zero MQ,Kafka)。【第二篇的内容大部分为网络资源的整理和汇总,供大家学习总结使用,最后有文章来源】 本次分享大纲 四、JMS消息服务 讲消息队列就不得不提JMS 。JM 阅读全文
posted @ 2017-05-23 21:40 罗志均 阅读(129) 评论(0) 推荐(0)
摘要: 最近,在研究docker,作为一个程序员,要想提高自己的竞争力,必须时刻保持学习的态度,技多不压身;发现从事Java工作以来,买了很多书,也逛了很多技术贴,技术的平面宽度是不断的延伸,有些是工作中需要的,有些是为自己将来在求职的过程中提升一下竞争力,防止遇见了一个自己意向度很高的公司,因为自己技术能 阅读全文
posted @ 2017-05-23 21:39 罗志均 阅读(162) 评论(0) 推荐(0)
摘要: 1. HashMap的数据结构 数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。 数组 数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难; 链表 链表存储区间离散,占用内存比较宽松,故空间复杂度 阅读全文
posted @ 2017-05-23 21:37 罗志均 阅读(101) 评论(0) 推荐(0)
摘要: JDK 1.4对java.util.Arrays.asList的定义,函数参数是Object[]。所以,在1.4中asList()并不支持基本类型的数组作参数。 JDK 1.5中,java.util.Arrays.asList的定义,函数参数是Varargs, 采用了泛型实现。同时由于autobox 阅读全文
posted @ 2017-05-23 21:37 罗志均 阅读(208) 评论(0) 推荐(0)
摘要: 1)、配置的文件(properties) 将那些经常要变化的参数配置成独立的propertis,方便以后的修改 redis.properties 1 redis.hostName=127.0.0.1 2 redis.port=6379 3 redis.timeout=15000 4 redis.us 阅读全文
posted @ 2017-05-23 21:26 罗志均 阅读(189) 评论(0) 推荐(0)
摘要: 目录 1 秒杀业务分析 正常电子商务流程(1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6)卖家发货 秒杀业务的特性(1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间短、瞬时并发量高; 2 秒杀技术挑战 假设某网站秒杀活动只推出一件商品,预 阅读全文
posted @ 2017-05-23 21:25 罗志均 阅读(147) 评论(0) 推荐(0)
摘要: HashTable是一个线程安全的类,它使用synchronized来锁住整张Hash表来实现线程安全,即每次锁住整张表让线程独占。ConcurrentHashMap允许多个修改操作并发进行,其关键在于使用了锁分离技术。它使用了多个锁来控制对hash表的不同部分进行的修改。ConcurrentHas 阅读全文
posted @ 2017-05-23 21:24 罗志均 阅读(141) 评论(0) 推荐(0)
摘要: 这段时间跳槽的人特别多, 程序员们又纷纷加入了年后面试寻求涨工资, 新机会的大军, 求职就意味着面试. 而对于java程序员来说, 数据库是面试必问的, 再次总结下数据库的面试常见问题: 1. 数据库的范式 范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗) 阅读全文
posted @ 2017-05-23 21:23 罗志均 阅读(109) 评论(0) 推荐(0)
摘要: SQL是每个Java程序员必回的一项技能, 对于项目中的各种复杂业务, 你是否能写出高效率, 简洁的SQL对于项目的运行效率和稳定性是有非常大的作用的. 通过个人的理解和网上的资料总结了一下常见的SQL优化知识: (1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器 阅读全文
posted @ 2017-05-23 21:13 罗志均 阅读(190) 评论(0) 推荐(0)
摘要: 动态代理的实现 使用的模式:代理模式。代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。类似租房的中介。 两种动态代理:(1)jdk动态代理,jdk动态代理是由Java内部的反射机制来实现的,目标类基于统一的接口(InvocationHandler)(2)cglib动态代理,cglib 阅读全文
posted @ 2017-05-23 18:37 罗志均 阅读(169) 评论(0) 推荐(0)
摘要: InitializingBean接口为bean提供了初始化方法的方式,它只包括afterPropertiesSet方法,凡是继承该接口的类,在初始化bean的时候会执行该方法。 测试程序如下: import org.springframework.beans.factory.Initializing 阅读全文
posted @ 2017-05-23 18:36 罗志均 阅读(232) 评论(0) 推荐(0)
摘要: 一、创建型模式 1、抽象工厂模式(Abstract factory pattern): 提供一个接口, 用于创建相关或依赖对象的家族, 而不需要指定具体类.2、生成器模式(Builder pattern): 使用生成器模式封装一个产品的构造过程, 并允许按步骤构造. 将一个复杂对象的构建与它的表示分 阅读全文
posted @ 2017-05-23 18:36 罗志均 阅读(109) 评论(0) 推荐(0)
摘要: 1. 要打印的资源 1 package com.mytest.thread; 2 3 /** 4 * 要打印的资源 5 * 6 */ 7 public class Num { 8 int i = 1; 9 // 两个线程看, 交替执行的一个标志 10 boolean flag = false; 11 阅读全文
posted @ 2017-05-23 18:35 罗志均 阅读(1573) 评论(0) 推荐(0)
摘要: 1.什么是AJAX?AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术。它使用:使用XHTML+CSS来标准化呈现;使用XML和XSLT进行数据交换及相关操作;使用XMLHttpRequest对 阅读全文
posted @ 2017-05-23 18:34 罗志均 阅读(220) 评论(0) 推荐(0)
摘要: 一、导出到默认目录 targed/dependency 从Maven项目中导出项目依赖的jar包:进入工程pom.xml 所在的目录下,执行如下命令: 1. mvn dependency:copy-dependencies 或在eclipse中,选择项目的pom.xml文件,点击右键菜单中的Run 阅读全文
posted @ 2017-05-23 18:34 罗志均 阅读(2657) 评论(0) 推荐(0)
摘要: 项目场景: 公司中医疗项目需要展示药品说明书的其他版本(图片或者PDF),由于其他版本文件存在Linux服务器上,服务器用的是weblogic, 无法直接访问文件,因此可以用weblogic的虚拟路径解决 解决的方法为:在weblogic.xml文件中配置要映射的路径为虚拟路径。 <virtual- 阅读全文
posted @ 2017-05-23 18:33 罗志均 阅读(364) 评论(0) 推荐(0)
摘要: 前言 通常情况下,无论是web浏览器还是移动app,我们与服务器之间的交互都是主动的,客户端向服务器端发出请求,然后服务器端返回数据给客户端,客户端浏览器再将信息呈现,客户端与服务端对应的模式是: 客户端请求--服务端响应,这种机制对于信息变化不是特别频繁的应用尚可,但对于实时要求高、海量并发的应用 阅读全文
posted @ 2017-05-23 18:33 罗志均 阅读(1657) 评论(0) 推荐(1)
摘要: 1、TCP连接 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。 建立起一个TCP连接需要经过“三次握手”: 第一次握手:客户端发送syn包(syn=j)到服务器,并 阅读全文
posted @ 2017-05-23 18:32 罗志均 阅读(174) 评论(0) 推荐(0)
摘要: 项目中要求做一个将配置文件读取到zookeeper节点上的工具: 开发代码如下: 但是当连接到远端的Zookeeper服务之后,出现了下面异常: Exception in thread "main" org.apache.zookeeper.KeeperException$ConnectionLos 阅读全文
posted @ 2017-05-23 18:31 罗志均 阅读(13935) 评论(0) 推荐(0)
摘要: 1.开始 >运行 >cmd,或者是window+R组合键,调出命令窗口 2.输入命令:netstat -ano,列出所有端口的情况。在列表中我们观察被占用的端口,比如是49157,首先找到它。 3.查看被占用端口对应的PID,输入命令:netstat -aon|findstr "49157",回车, 阅读全文
posted @ 2017-05-23 18:30 罗志均 阅读(126) 评论(0) 推荐(0)
摘要: 编写功能类: View Code 编写main方法类: View Code 在pom文件中配置: View Code 打包方式: 1.进入到项目所在目录,例如: cd D:\workspace\riskCompensate\FileToZkUtil 2.运行命令 mvn assembly:assem 阅读全文
posted @ 2017-05-23 18:30 罗志均 阅读(136) 评论(0) 推荐(0)
摘要: 计算机网络: 1.DNS DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运 阅读全文
posted @ 2017-05-23 18:29 罗志均 阅读(325) 评论(0) 推荐(0)
摘要: 方式1.通过API 方式2.通过spring applicationContext-dubbo.xml 注意引入提供方的接口jar包 方式1.通过API 方式2.通过spring applicationContext-dubbo.xml 注意引入提供方的接口jar包 ♥作者:明志健致远 ♠出处:ht 阅读全文
posted @ 2017-05-23 18:28 罗志均 阅读(153) 评论(0) 推荐(0)
摘要: Hashtable 和 HashMap的比较 1. HashMap可以接受null(HashMap可以接受为null的键值(key)和值(value), HashTable不可以接受为null的键(key)和值(value) 2. HashMap是非synchronized的, Hashtable是 阅读全文
posted @ 2017-05-23 18:28 罗志均 阅读(126) 评论(0) 推荐(0)
友情链接:回力 | 中老年女装 | 武汉英语培训机构 | 留学费用一览表 | 托福考试费用