- 博客(51)
- 收藏
- 关注
原创 Java RTTI
Java RTTI的思维导图: RTTI(runtime type info)用于在运行时识别对象的类型信息。java虚拟机不能在运行时加载所有类型对象(动态加载),同时部分类型的信息是无法再编译器就获取的,需要在业务逻辑中依据类型信息进行相关逻辑的处理,这是就需要RTTIl了。 众所周知,java类在编写时会生成.class文件,那.class文件时如何使用的呢?在创建java类对应...
2012-11-18 22:13:33
257
最近该读哪些书(三)
以下最近接触的几本非技术书籍:《影响力》、《如何阅读一本书》、《暗时间》(刘未鹏)、《我不是教你诈》(刘墉)、《激荡三十年》(吴晓波)、《鲁宾逊漂流记》(中英文对比版)。 《影响力》之所以经典,也许它是一本那么“实在”的书籍,生活的处处点滴你都能在书中找到对应的规则:互惠、承诺一致、社会认同、权威、喜好、短缺。读了全书后,感觉开始对生活中的现象进行反思了,激发了自己思考的源泉。但是,自己还是...
2012-11-12 14:01:12
203
原创 项目管理之项目基础概念
从这篇文章开始对自己PMP考试的知识进行分析总结。首先,回顾下项目管理的基础知识:项目基础概念、项目生命周期与组织、单个项目的管理过程。 项目管理的基础概念包括: 项目是什么; 项目与运营的关系; 什么是项目管理; 项目经理是什么样的角色; 项目干系人包括哪些。 项目是什么? 项目,是为了创造独特的产品、服务或成果的临时性工作。项目本身具有特殊性(...
2012-08-26 18:30:51
399
使用DOM实现事件响应函数的注册、删除及事件传递的终止
看代码, 如下: <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script type="text/javascript"> // inner的响应函数 var clickInner = fu
2012-08-24 18:07:47
227
原创 JS中事件流测试
以下是一段用于测试两种事件流的类型:捕获(capture)和冒泡(bubble),如下:<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script type="text/javascript"> do
2012-08-23 16:42:24
144
原创 最近该读哪些书(二)
之前列举了最近的读书情况,大概明白了读书效果比较差的几个原因,但是究竟为什么会出现这样的情况,如何避免以后再出现类型的情况,需要在这篇文章里进行梳理。 先说说为什么会出现这种情况。 个人发展目标不清晰是主要原因。近一年时间开始尝试Team的管理,可是实践工作中处理的主要问题还是技术问题,组员的、自己的和其他项目组的。既然接受了问题就要想尽办法去解决,所以一直以来google的主要都是技术...
2012-08-19 17:22:03
116
原创 理解ThreadLocal
跟以前的文章一样,还是先来一个例子。 public class ThreadLocalDemo implements Runnable { //创建线程局部变量studentLocal,在后面你会发现用来保存Student对象 private final static ThreadLocal<Student> studentLocal = new Thread...
2012-08-16 16:01:18
121
原创 使用JS闭包控制对象属性访问范围
var util = function(){ // default value; var varA = 'a',varB = 'b'; return{ init : function(varJson){ varA = varJson.a; varB = varJson.b; }, getValueA : function(){ re...
2012-08-16 10:36:46
196
原创 Extjs源码——extend
Extjs的extend方法是框架本身的一个基础方法,用于形成所有组件之间的继承结构。如果要理解extend方法实现,必须要理解javascript面向对象基础(可参考此文)。 先写一个extend方法具体应用的例子: Person = function(atts){ if(atts){ this.id = atts.id; this.name = atts.name;...
2012-08-15 16:20:31
184
原创 最近该读哪些书(一)
2011年我买了许多书,却没有认真的读。最近觉得要静下心来坚持读写书了,可是却不知道该读那本?先列举下有那些书可供选择。所有的书从内容上划分为:技术类和非技术类,从介质上分为纸质类和电子类。书不较多,也比较杂,我就想到哪写到哪。 《java编程思想》 技术类 纸质、电子 每次都是读这本书都是读了几天就坚持不住了,后来开始挑着读,还是坚持不住。 《java与模式》 技术类 纸质...
2012-08-11 11:38:12
158
原创 Servlet中context和session相关listener
1.ServletContextAttributeListener 监听对ServletContext属性的操作,比如增加/删除/修改 2.ServletContextListener 监听ServletContext,当创建ServletContext时,激发contextInitialized (ServletContextEvent sce)方法;当销毁ServletCont...
2012-07-16 15:36:42
156
原创 应用设计模式之策略模式(Reflection)
前两篇文章介绍了结合静态代理和简单工厂对策略进行应用,这里介绍使用反射方式应用策略模式。 定义反射策略类: /** * @author alex * */public class StratagemReflection { private AbstractDao dao; public StratagemReflection(String classN...
2012-07-09 15:58:16
303
原创 应用设计模式之策略模式(Factory)
上一篇介绍了策略模式结合静态代理对策略进行应用,这里介绍结合简单工厂对策略模式的应用。 定义策略枚举: public enum DaoType { /** * hibernate */ HIBERNATE, /** * ibatits */ IBATITS} 定义策略工厂: /** * @author alex...
2012-07-09 15:48:06
172
原创 应用设计模式之策略模式(Context)
策略模式:定义的固定的接口并有一系列不同类型的具体实现,能够在程序中动态使用这些具体的实现。策略模式常与代理模式、工厂模式一起使用,以实现策略之间的灵活切换。 基础类/接口: package dp;public abstract class AbstractDao { public abstract Object getById(); public ...
2012-07-09 10:45:06
910
原创 Javascript原型链
以一段代码认识原型链。 //Animal构造函数function Animal(name){ this.name = name;}//Animal原型对象Animal.prototype = { id:"Animal", sleep:function(){ alert("sleep"); }} var d...
2012-07-05 17:59:22
117
原创 Oracle优化器
Oracle的优化器有两种优化方式,即基于规则的优化方式(Rule-Based Optimization,简称为RBO)和基于代价的优化方式(Cost-Based Optimization,简称为CBO),在Oracle8及以后的版本,Oracle强列推荐用CBO的方式 RBO方式:优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则。比如我们常见的,当一个where...
2012-07-03 17:04:20
124
原创 Oracle查询不走索引
今天在进行sql条有的时候,发现子查询中总是不走索引,对于的字段是建立了索引了的,可是不管怎么折腾就是不通过索引进行查询。网上对oracle查询不走索引的解释包括数据量较小(不值得走索引)、包含统计函数、未建立主键、对应列为nullable等等。后来,在与另外的同事讨论时才知道,原来是因为索引结果过多而进行全表遍历。表中总数据量为1千万,而索引对应条件查询的结果有500多万,在进行执行计划分析时...
2012-07-02 23:20:50
664
原创 跨站点请求伪造防范(转载)
CSRF 的防范机制有很多种,防范的方法也根据 CSRF 攻击方式的不断升级而不断演化。常用的有检查 Refer 头部信息,使用一次性令牌,使用验证图片等手段。出于性能的考虑,如果每个请求都加入令牌验证将极大的增加服务器的负担,具体采用那种方法更合理,需要谨慎审视每种保护的优缺点。1. 检查 HTTP 头部 Refer 信息,这是防止 CSRF 的最简单容易实现的一种手段。根据 RFC ...
2012-06-28 11:52:35
424
原创 AppScan中的安全漏洞类型及解决方案
记录下近期项目中使用AppScan发现的安全漏洞,在后续持续跟踪:1. 内部IP泄露;2.检测到应用程序检测脚本;3.HTML敏感信息泄露;4.跨站点请求伪造;5.发现内部IP泄露模式;6.已解密的登录请求;(明文发送请求参数)7.会话标识未更新;(不要接受外部创建的会话标识)8.SQL盲注;9.登录错误消息凭证枚举; 其中“跨站点请求伪造”类型的安全...
2012-06-25 16:56:14
3251
1
原创 oracle中使用序列和触发器实现单个字段值自增长
创建序列:create sequence ccxx_ver_seq start with 1 increment by 1; 创建触发器:create or replace trigger ccxx_ver_trigbefore insert on ccxxfor each row begin select ccxx_ver_seq.nextval into :n...
2012-06-21 09:42:29
108
原创 SQL优化笔记
1.使用确定的字段替代*: 使用 SELECT id, first_name, last_name, age, subject FROM student_details; 替代 SELECT * FROM student_details; 2.having会在查询出结果后进行过滤,可以理解为一个过滤器,所以不要将having作为其他用途(除过滤器): ...
2012-06-20 14:29:49
108
原创 iframe使用笔记
1.使用JS刷新iframe的方法: document.getElementById('iframeid').src = document.getElementById('iframeid').srcordocument.getElementById('iframeid').src += '';原理都是一样的,就是修改iframe的src,这种方法还是比较有效的,可以兼容IE,fi...
2012-06-19 11:29:42
109
原创 使用plsql执行计划进行sql调优(转载)
一段SQL代码写好以后,可以通过查看SQL的执行计划,初步预测该SQL在运行时的性能好坏,尤其是在发现某个SQL语句的效率较差时,我们可以通过查看执行计划,分析出该SQL代码的问题所在。 那么,作为开发人员,怎么样比较简单的利用执行计划评估SQL语句的性能呢?总结如下步骤供大家参考: 1、 打开熟悉的查看工具:PL/SQL Developer。 在PL/SQL Develo...
2012-06-18 14:36:49
3655
原创 web.xml 中的listener、 filter、servlet 加载顺序及其详解(转载)
在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰。 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是:listener ...
2012-06-13 18:56:31
101
原创 Spring的PropertyPlaceholderConfigurer
使用PropertyPlaceholderConfigurer将系统相关变量分离懂到一个properties文件中,便于系统移植、切换。<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="systemPropert...
2012-06-13 17:26:09
125
原创 GOF23种设计模式趣谈(转载)
在网络上流畅很广的一篇旧文,暂时没找到原作者,目前所看到的最早转载时间是 2005 年 2 月 28 日。作者用轻松的语言,形象解释了 23 种模式,有很好的启发作用。创建型模式1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Fac...
2012-05-28 13:07:26
133
原创 Lucence使用笔记
1. lucence分页 TopScoreDocCollector topCollector = TopScoreDocCollector.create( 100, false); searcher.search(query, topCollector); System.out.println("命中:" + to...
2012-05-24 17:53:58
164
原创 java 静态块与非静态块的执行顺序
加载顺序:1. 所有静态的(无论其是变量还是块)都按顺序执行. 2. 所有的非静态的块都在静态的(无论其是变量还是块)后执行. 3. 所有的块(无论是静态的还是非静态的)都在构造之前执行.4. 静态块在类被加载到内存后就开始执行5. 非静态块是在创建对象时,构造之前被调用 可以在编程时,适当使用静态块和非静态块! 参考:http://terryjs.iteye...
2012-05-23 15:50:56
218
原创 Log4j使用笔记
关于ConversionPattern: %c 输出类的名字,默认是输出全名,可以指定输出多少层次,比如%c{2}这样配置的话 "a.b.c" 是全类名,会输出"b.c". %d 用来输出log事件发生的时间。可以指定格式,比如:%d{yyyy-MM-dd HH:mm:ss}会输出2007-04-26 20:12:03 %F 输出log事件发生的文件。%l ...
2012-05-23 10:14:38
147
原创 IE6下调用功能键方法
var WsShell = new ActiveXObject('WScript.Shell') WsShell.SendKeys('{F11}');
2012-03-01 10:04:16
107
原创 【转载】hibernate性能调优(下)
原文:http://xiexiejiao.cn/hibernate/hibernate-performance-optimization-b.html Hibernate是笔者使用了超过5年的优秀ORM框架,虽然说使用了5年,但笔者并没有把握说自己真正意义上的精通Hibernate。说道熟悉Hibernate还差不多,因为Hibernate用法和特性只要使用过或许都很简单,但是要做到...
2012-01-10 17:51:46
103
原创 【转载】hibernate性能调优(上)
原文:http://xiexiejiao.cn/hibernate/hibernate-performance-optimization-a.html Hibernate是笔者使用了超过5年的优秀ORM框架,虽然说使用了5年,但笔者并没有把握说自己真正意义上的精通Hibernate。说道熟悉Hibernate还差不多,因为Hibernate用法和特性只要使用过或许都很简单,但是要做到...
2012-01-10 17:49:11
108
Extjs源码——ext-base
Iteye中关注Extjs源码的比较多啊,推荐个:http://linder0209.iteye.com/category/58900
2012-01-04 14:47:45
121
原创 问题集锦一
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:问:什么是复合主键?...
2011-12-28 14:31:24
89
Extjs源码——adapter
Extjs adapter中提供了Extjs框架的基础api,是Extjs组件的基础。在扩展Extjs组件时,通常需要使用基础api。学习基础api也可以加深对javascript基础的理解,如对象继承、dom操作、事件机制、BOM对象等。 YUI是一套yahoo开发的优秀的js框架,不仅如此,YUI还有其他优秀的工具。具体参考:http://developer.yahoo.c...
2011-12-27 21:12:06
149
原创 Extjs源码——概况
Extjs分为以下几部分:adapter:Extjs基础代码及与jQuery、prototype、yui的集成代码,ext-base.js为使用Extjs必须引用的代码。core:Extj核心对象Element对象处理代码,以及dom操作等。data:包括store、reader、writer、proxy、dataType、dataField、record的数据管理对象。dd:拖拽...
2011-12-26 15:17:51
187
原创 省乎己(2011.12.18)
暴躁的脾气还是没有改变过,因为吵架,第二次摔手机! 有多少次因为纠结过程而迷失了目标。过程中会涉及的流程、方法、工具、心态,每一步出现问题都会引入歧途,导致时间和精力的浪费!智能手机?我的目标是高效的沟通,语音电话和短信足以。Thinkpad?我只需要一台能上网、写程序、听英语的普通笔记本就行。车子?我只希望能够准时到达我的目的地,什么方式 I don't care。房子?我所有的财富...
2011-12-18 22:13:30
87
如何在软件设计中运用UML
近期组件组要进行一个新组件的开发,目前处在设计阶段,于是想使用UML进行设计。这里对设计过程中如何结合UML进行描述。 第一步:通过用例图描述需求 在进行需求调研结束时需要输出《需求规格说明书》,设计阶段就要需要这份文档获取需求并加以理解。用例图体现系统为每个actor提供的功能,用于描述系统的功能需求(每个系统中应该包括功能需求和非功能需求)。用例图中包含一至多个actor,每个...
2011-12-03 17:44:12
315
原创 省乎己(2011.11)
11月份,我做了哪些事情? 阅读《统一软件开发过程》。统一软件开发过程有三方面特征:以用例为驱动、以架构为中心、迭代和增量。统一过程是在重复一系列组成系统生命周期的循环,每个循环都以提交用户可用的版本为终结。每个循环包括:初始、细化、构造、移交四个阶段,每个阶段阶段都以一个里程碑作为结束标识。每个阶段有进一步细分为多次迭代过程或袖珍项目。每次迭代会经历5个典型的阶段:需求、分析、设计、...
2011-12-03 17:04:18
112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人