自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Dubbo架构设计详解

Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。关于注册中心、协议支持、服务监控等内容,详见后面描述。

2017-09-18 10:04:12 369

转载 JVM中的垃圾收集策略

标记-清除算法标记清除收集器停止所有的工作,从根扫描每个活跃的对象,然后标记扫描过的对象,标记完成以后,清除那些没有被标记的对象。优点:1 解决循环引用的问题2 不需要编译器的配合,从而就不执行额外的指令缺点:1. 每个活跃的对象都要进行扫描,收集暂停的时间比较长。2.标记-清除算法采用从根集合进行扫描,对存活的对象对象标记,标记完毕后,再扫描整个空间中未被标记

2017-09-16 11:31:59 242

转载 JVM内存模型

JVM定义了若干个程序执行期间使用的数据区域。这个区域里的一些数据在JVM启动的时候创建,在JVM退出的时候销毁。而其他的数据依赖于每一个线程,在线程创建时创建,在线程退出时销毁。程序计数器程序计数器是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。由于Java 虚拟机的多线程是通过线程

2017-09-16 11:27:59 176

原创 Java中的四种引用方式的区别

强引用、软引用、弱引用、虚引用的概念强引用(StrongReference)强引用就是指在程序代码之中普遍存在的,比如下面这段代码中的object和str都是强引用:12Object object = new Object();String str = "hello";只要某个对象有强引用与之关联,

2017-09-15 20:51:29 306

原创 Spring AOP的理解和应用场景

AOP相关概念AOP是Aspect Oriented Programing的简称,面向切面编程。AOP适合于那些具有横切逻辑的应用:如性能监测,访问控制,事务管理、缓存、对象池管理以及日志记录。AOP将这些分散在各个业务逻辑中的代码通过横向切割的方式抽取到一个独立的模块中。AOP 实现的关键就在于 AOP 框架自动创建的 AOP 代理,AOP 代理则可分为静态代理和动态代理两大类,其中

2017-08-22 14:41:17 3163

原创 Jsp与Servlet的区别与联系

Jsp与Servlet的区别与联系1.jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)2.jsp更擅长表现于页面显示,servlet更擅长于逻辑控制.3.Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对

2017-08-22 14:05:05 283

转载 建造者模式

一、建造者模式介绍建造者模式:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 [构建与表示分离,同构建不同表示]假如一个对象的构建很复杂,需要很多步骤。则可以使用建造者模式,将其构建对象和组装成一个对象这两步给分开来。构建部分为(builder)和组织部分(director),实现了构建和装配的解耦。不同的构建器,相同的装配也可以做出不同的对象。相同的构建器

2017-08-19 11:21:54 162

转载 原型模式

​一、原型模式介绍原型模式:原型模式就是从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节。所谓原型模式,就是java中的克隆技术,以某个对象为原型。复制出新的对象。显然新的对象具备原型对象的特点。效率高(避免了重新执行构造过程步骤)克隆类似于new,但和new不同。new创建新的对象属性采用的是默认值。克隆出来的对象的属性值完全和原型对象相同。并且克隆出的新对象不会影

2017-08-19 11:02:10 177

转载 Singleton单例模式

一、单例模式介绍单例模式:保证一个类只有一个实例,并且提供一个访问该实例的全局访问点。单例模式优点:1.只生成一个实例,系统开销比较小2.单例模式可以在系统设置全局的访问点,优化共享资源的访问。常见单例模式分类:主要:饿汉式(线程安全,调用效率高,但是不能延时加载)懒汉式(线程安全,调用效率不高,但是可以延时加载)其他:双重检测锁式(由于JVM底层内部模型原

2017-08-19 10:58:04 247

原创 Java中static代码块、普通代码块和构造代码块的执行顺序

—————————————————————public class Code {    {        System.out.println("Code普通代码块");    }    static {        System.out.println("Code的静态代码块");    }    public Code() {        S

2017-08-16 15:30:08 384

原创 静态代理模式

静态代理模式第一步:接口/** * 抽象角色:提供代理角色和真实角色对外提供的公共方法 */public interface Star {    void confer();//面谈    void signContract();//签合同    void bookTicket();//订票    void sing();//唱歌    void c

2017-08-12 11:19:39 144

转载 二进制的转换与二进制的运算

进制转换十进制数转换为二进制数、八进制数、十六进制数的方法:二进制数、八进制数、十六进制数转换为十进制数的方法:按权展开求和与十进制(1)二进制转十进制方法:“按权展开求和”【例】:规律:个位上的数字的次数是0,十位上的数字的次数是1,......,依次递增,而十分位的数字的次数是-1,百分位上数字的次数是-2,......,依次递减。注意:不是

2017-08-09 20:31:40 1845

转载 Java 中的堆和栈

Java 中的堆和栈  Java把内存划分成两种:一种是栈内存,一种是堆内存。  在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。  当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。  堆内存用来存放由new创建的对象和数组

2017-08-08 08:35:33 140

原创 java递归方法解决汉诺塔

import java.util.Scanner;public class Test { public static void main(String[] args) { System.out.println("请输入一个值"); Scanner scan=new Scanner(System.in); int n =scan.nextInt(); char x='A';//初

2017-08-07 19:55:17 548

转载 简单工厂模式

工厂模式工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象,将具体过程屏蔽隔离开,以提高灵活性。介绍意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程

2017-08-07 15:09:29 153

转载 Servlet、Struts1、Struts2、SpringMVC运行原理

Servlet:Servlet 是为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类

2017-08-06 18:49:45 450

空空如也

空空如也

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

TA关注的人

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