`
alex_gao
  • 浏览: 80955 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
2011-12-28: 问:如何使用JS闭包控制对象属性访问范围? 解:http://alexgao.iteye.com/admin/blogs/1633611   2012-01-08: 问:如何理解threadLocal?该如何应用? 解:http://alexgao.iteye.com/admin/blogs/1634060   2012-01-10: 问:什么是复合主键?如何使用?为需要存在复合主键?   2012-08-15: 问:如何理解Extjs中的Extend?请手动写一个类似的JS继承通用方法。 答:http://alexgao.iteye.com/a ...

Java RTTI

Java RTTI的思维导图: RTTI(runtime type info)用于在运行时识别对象的类型信息。java虚拟机不能在运行时加载所有类型对象(动态加载),同时部分类型的信息是无法再编译器就获取的,需要在业务逻辑中依据类型信息进行相关逻辑的处理,这是就需要RTTIl了。 众所周知,java类在编写时会生成.class文件,那.class文件时如何使用的呢?在创建java类对应对象时,jvm虚拟机的classLoader会检测对象对应的Class对象是否已加载,如果没有加载则会依据相关途径查询对应.class文件(如 通过classPath在本地文件系统进行查找),在获取到. ...
以下最近接触的几本非技术书籍:《影响力》、《如何阅读一本书》、《暗时间》(刘未鹏)、《我不是教你诈》(刘墉)、《激荡三十年》(吴晓波)、《鲁宾逊漂流记》(中英文对比版)。 《影响力》之所以经典,也许它 ...
从这篇文章开始对自己PMP考试的知识进行分析总结。首先,回顾下项目管理的基础知识:项目基础概念、项目生命周期与组织、单个项目的管理过程。 项目管理的基础概念包括: 项目是什么; 项目与运营的关系; 什么 ...
看代码, 如下:   <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript"> // inner的响应函数 var clickInner = function(e){ alert(1.1); }; // banner的响应函数 var clickBanner ...
以下是一段用于测试两种事件流的类型:捕获(capture)和冒泡(bubble),如下: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript"> document.onreadys ...
之前列举了最近的读书情况,大概明白了读书效果比较差的几个原因,但是究竟为什么会出现这样的情况,如何避免以后再出现类型的情况,需要在这篇文章里进行梳理。 先说说为什么会出现这种情况。 个人发展目标不清晰是主要原因。近一年时间开始尝试Team的管理,可是实践工作中处理的主要问题还是技术问题,组员的、自己的和其他项目组的。既然接受了问题就要想尽办法去解决,所以一直以来google的主要都是技术问题,有空闲时也想的时如何把技术上、设计上的难点攻克了。而所处的位置单纯的有技术攻关能力还是不够,还需要有一定的管理能力,尤其是对上、对下的沟通协调,所以我还需要接触一下管理知识,包括通用的PMP项目管 ...

理解ThreadLocal

跟以前的文章一样,还是先来一个例子。 public class ThreadLocalDemo implements Runnable { //创建线程局部变量studentLocal,在后面你会发现用来保存Student对象 private final static ThreadLocal<Student> studentLocal = new ThreadLocal<Student> ...
var util = function(){ // default value; var varA = 'a',varB = 'b'; return{ init : function(varJson){ varA = varJson.a; varB = varJson.b; }, getValueA : function(){ return varA; }, getValueB : function(){ return varB; }, show : function(){ alert(va ...
Extjs的extend方法是框架本身的一个基础方法,用于形成所有组件之间的继承结构。如果要理解extend方法实现,必须要理解javascript面向对象基础(可参考此文)。 先写一个extend方法具体应用的例子: Person = function(atts){ if(atts){ this.id = atts.id; this.name = atts.name; this.age = atts.age; } }; Person.prototype.sayName = function(){ alert(this.name); }; ...
2011年我买了许多书,却没有认真的读。最近觉得要静下心来坚持读写书了,可是却不知道该读那本?先列举下有那些书可供选择。所有的书从内容上划分为:技术类和非技术类,从介质上分为纸质类和电子类。书不较多,也比较杂,我就想到哪写到哪。   《java编程思想》 技术类 纸质、电子 每次都是读这本书都是读了几天就坚持不住了,后来开始挑着读,还是坚持不住。 《java与模式》 技术类 纸质、电子         基本上就只读了前两章。 《javascript高级程序设计》 技术 纸质、电子 很喜欢的一本书,读了两三遍了,DOM高级部分没有详细读。 《写给大家看的css书 ...
 1.ServletContextAttributeListener   监听对ServletContext属性的操作,比如增加/删除/修改   2.ServletContextListener    监听ServletContext,当创建ServletContext时,激发contextInitialized (ServletContextEvent sce)方法;当销毁ServletContext时,激发contextDestroyed (ServletContextEvent sce)方法。   3.HttpSessionListener   监听HttpSession的操作。当创建一个 ...
前两篇文章介绍了结合静态代理和简单工厂对策略进行应用,这里介绍使用反射方式应用策略模式。 定义反射策略类: /** * @author alex * */ public class StratagemReflection { private AbstractDao dao; public StratagemReflection(String className) throws Exception{ try { this.dao = (AbstractDao)Class.forName(className).newInstance(); ...
上一篇介绍了策略模式结合静态代理对策略进行应用,这里介绍结合简单工厂对策略模式的应用。 定义策略枚举:   public enum DaoType { /** * hibernate */ HIBERNATE, /** * ibatits */ IBATITS }   定义策略工厂: /** * @author alex * */ public class StratagemFactory { private AbstractDao dao; public StratagemFactory( ...
策略模式:定义的固定的接口并有一系列不同类型的具体实现,能够在程序中动态使用这些具体的实现。 策略模式常与代理模式、工厂模式一起使用,以实现策略之间的灵活切换。   基础类/接口:   package dp; public abstract class AbstractDao { public abstract Object getById(); public void saveEntity(){ System.out.println("Save entity main..."); } }  实现1(hibernate): ...
Global site tag (gtag.js) - Google Analytics