自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 06JVM-垃圾收集算法之常用垃圾收集器

如果说垃圾收集算法是Java虚拟机的指导思想,那么下面的垃圾收集器正是这些算法的实现,保证了jvm之运行时内存的正确使用和定时清理

2017-02-28 21:02:46 419

原创 05JVM-垃圾收集算法

垃圾收集算法1. 标记-清除2. 复制算法3. 标记-整理

2017-02-28 20:50:37 315

原创 04JVM-对象的死亡与对象引用

垃圾收集器在回收Java对象时,首先要确定对象是否存活。在虚拟机规范中,定义了两种方式判断对象的是否被回收。一是引用计数法,二是根枚举算法

2017-02-28 20:48:15 341

原创 03JVM-对象的产生

创建Java是一门面向对象的语言,做Java程序运行过程中,无时无刻都会有对象创建出来。当虚拟机遇到一条new指令时,经过几个过程:1. 在常量池中定位到类的符号引用2. 检查该符号引用对应的类是否已经被加载、解析、初始化3. 在Java堆中为新生对象分配内存(对象所需内存在类加载时已经确定)

2017-02-27 23:02:56 390

原创 02JVM-内存溢出

上篇文章中,记录了Java内存模型中运行时数据区的划分,每个数据区域都会可能伴随着内存溢出异常。

2017-02-27 22:58:35 409

原创 01JVM-内存划分

Java虚拟机中执行Java程序时,虚拟机会把它管理的内存划分为不同的数据区域。有些区域是跟着虚拟机进程决定其生命周期,有的则是依赖用户线程的启动和结束而建立和销毁。 从线程独占的角度上划分,可以将内存区域划分为线程共享区域和线程独享区域。

2017-02-27 22:46:31 309

原创 指针变量与变量的比较

指针变量:1. 指针变量存放的一定是内存地址,不可以存放其他值。 变量比较说明: 1. 每个变量都有内存空间,也就是编译器会给每个变量分配内存地址2. 指针变量也有内存地址,但同时指针变量存放的值也是地址

2016-06-01 06:17:33 4918

原创 java 使用ReentrantLock Condition实现阻塞队列

阻塞队列简单实现。先进先出

2016-03-23 23:53:23 2891

原创 设计一个缓存系统  java多线程读写锁的应用

高并发多线程读写锁的应用

2016-03-23 01:37:51 2753

原创 使用nginx针对URL实现负载均衡或者说接口定向分发

针对location进行接口的定向分发。

2016-02-24 14:33:48 10794

原创 Linux top命令说明笔记

Linux的top命令是动态展示linux运行过程当中的系统信息,提供实时的对系统处理器的监视状态。常用的linux系统性能分析工具,能够实时地对系统显示系统中各个进程的资源使用情况。

2016-02-17 17:28:12 343

原创 Redis分布式锁实现原理 java版

Redis因为是单线程的,所以本身没有锁的概念。所以分布式锁的实现原理是往Redis当中写入一个key(调用方法setnx),写入成功相当于获取锁成功。写入失败也即是setnx方法返回0,获取锁失败。

2016-02-17 17:04:47 9044

原创 Linux基础1 文件管理命令

linux哲学思想里面,一切皆文件,所有的硬件设备也是在系统中映射成文件,直接操作文件相当于操作使用了硬件设备。文件管理所涉及到的命令ls、type、file、stat、cp、mv、install、mkdir、rmdir

2016-02-15 23:18:00 381

原创 jQuery 插件 基础

一、插件的基本要点    1. 命名jQuery.[插件名].js    2. 所有的对象方法都应当附加到jQuery.fn对象上,而所有的全部函数都应当附加到jQuery对象本身上    3. 在插件内部的this指向的是当前通过选择器获取的jQuery对象,而不像一般方法那样,如click,内部的this指向的是DOM元素    4. 可以通过this.each来遍历所有的元素

2014-12-04 21:55:10 466

原创 JS校验url地址

var Utils = { isUrl : function(str_url) { var strRegex = "^((https|http|ftp|rtsp|mms)://)?[a-z0-9A-Z]{3}\.[a-z0-9A-Z][a-z0-9A-Z]{0,61}?[a-z0-9A-Z]\.com|net|cn|cc (:s[0-9]{1-4})?/$"; var re = ne

2014-12-04 21:53:59 1939

原创 Spring 定时任务配置(以普通类的方式,不继承任何类)

// 第一步:定义定时任务类:一个普通的java类/** * 定时更新业务类 * @author ZRD * */public class MicromsgUpdateInfoJob { /** * 任务方法1 */ public void updateAccessToken() { System.out.println("【access_token 更新任务完

2014-12-04 21:52:24 608

原创 spring4 aop annotation

package com.zrd.aop.annotation;/** * 第一步:定义一个接口 * * @author ZRD * */public interface IMyService { int add(int i, int j);}package com.zrd.aop.annotation;import org.springframework.stere

2014-07-31 07:13:49 1804

原创 Class.getClassLoader().getResource() Class.getResource()

System.out.println(Test.class.getResource("/")); System.out.println(Test.class.getClassLoader().getResource(""));// 这两句代码是等价的。如果要加载某个资源文件从前面加上包名即可。// file:/D:/myWorkspace/projectName/webapp/

2014-07-29 14:28:06 431

原创 Extjs 组件继承 模板说明(以GridPanel为例)

1. 重写initComponent()方法,并在该方法在调用父类的initComponent()方法。     如:subclass.superclass.initComponent.call(this);2. 在initComponent中,出现下面语句,覆盖父类属性 Ext.apply(this, { title : "aaa" });3. 基本模板代码如下:Ext.ns(

2014-07-24 08:44:02 1607

原创 Extjs GridPanel 几点说明

1. 在Ext中,表格控件必须包含列定义信息,并指定表格的数据存储器。列信息由columns定义,而数据存储器有store定义。2. store负责把各种各样的原始数据(JSON对象数组等等)转换成Ext.data.Record类型的对象。    包含两部分的信息:proxy和reader。proxy指定获取数据的方式,reader是指如何解析这一堆数据。

2014-07-23 09:20:07 682

原创 单例设计模式

类在内存中只有一个实例对象单例注意要点1.饿汉式单例a. 构造私有b. 自己创建对象c. 通过一个公共方法访问2. 懒汉式单例(线程安全,延迟加载问题)a. 构造私有b. 自己不创建对象c. 通过一个公共的方法访问

2014-02-20 15:22:15 422

原创 线程生命周期图示

线程生命周期图示

2014-02-20 13:51:51 509

原创 采用动态代理技术,实现标准的连接池

/** * 采用动态代理技术,实现标准的连接池 * @author zhurudong * */public class DBCPool implements DataSource{ // 声明List,管理连接池 private LinkedList pool = new LinkedList(); // 构造函数,初始化连接池 public DBCPool() {

2014-02-19 19:23:19 524

原创 使用包装设计模式,实现标准连接池

public class MyDataSource implements DataSource{ private LinkedList pool = new LinkedList(); public MyDataSource() { String driverClassName = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql

2014-02-19 19:21:46 702

原创 $.post与$.ajax 结合struts问题

1. $.post 当后台发生异常时,回调函数还是会接受到数据。也就是不管正确错误的数据都会接受到数据2.$.ajax 中的回调函数success和error,分别是用来响应后台请求成功时的数据处理和请求出现错误时的数据处理的。因为服务器容器设置发生错误时所对应的状态码,这时ajax对状态码进行分析,是调用回调函数success还是error函数,如果状态码是错误的状态码,则调用error函数

2014-01-15 12:33:09 792

原创 (笔记) javascript 继承

/** * 当该函数中有一个参数的情况下创建类 * 当该函数中有两个参数的情况下,第一个参数是基类,第二个参数就是在基类的基础上添加的内容。 */function extend(obj, prop){ function F(){ } /** * 当第一次调用extend方法的时候,obj是一个json格式的对象。 */ if(typeof obj == "objec

2013-12-31 16:37:18 529

原创 (笔记)struts2流程1 -- Tomcat启动时

总结:1. 当tomcat启动时,struts2的过滤器启动2. tomcat容器会调用struts2的过滤器StrutsPrepareAndExeceuteFilter 的 init 方法3. StrutsPrepareAndExecuteFilter的init方法进行了struts的一系列初始化的工作。包括FilterConfig的整合,初始化dispatcher对象。。。。。

2013-12-29 13:14:27 625

空空如也

空空如也

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

TA关注的人

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