<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[灰辉]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/iteye_8125</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; iteye_8125]]></copyright><item><title><![CDATA[Java RTTI]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82443249</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82443249</guid><author>iteye_8125</author><pubDate>Sun, 18 Nov 2012 22:13:33 +0800</pubDate><description><![CDATA[Java RTTI的思维导图：

	RTTI（runtime type info）用于在运行时识别对象的类型信息。java虚拟机不能在运行时加载所有类型对象（动态加载），同时部分类型的信息是无法再编译器就获取的，需要在业务逻辑中依据类型信息进行相关逻辑的处理，这是就需要RTTIl了。
	众所周知，java类在编写时会生成.class文件，那.class文件时如何使用的呢？在创建java类对应...]]></description><category></category></item><item><title><![CDATA[最近该读哪些书（三）]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82441697</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82441697</guid><author>iteye_8125</author><pubDate>Mon, 12 Nov 2012 14:01:12 +0800</pubDate><description><![CDATA[	以下最近接触的几本非技术书籍：《影响力》、《如何阅读一本书》、《暗时间》（刘未鹏）、《我不是教你诈》（刘墉）、《激荡三十年》（吴晓波）、《鲁宾逊漂流记》（中英文对比版）。
	《影响力》之所以经典，也许它是一本那么“实在”的书籍，生活的处处点滴你都能在书中找到对应的规则：互惠、承诺一致、社会认同、权威、喜好、短缺。读了全书后，感觉开始对生活中的现象进行反思了，激发了自己思考的源泉。但是，自己还是...]]></description><category></category></item><item><title><![CDATA[项目管理之项目基础概念]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82404276</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82404276</guid><author>iteye_8125</author><pubDate>Sun, 26 Aug 2012 18:30:51 +0800</pubDate><description><![CDATA[	从这篇文章开始对自己PMP考试的知识进行分析总结。首先，回顾下项目管理的基础知识：项目基础概念、项目生命周期与组织、单个项目的管理过程。
	项目管理的基础概念包括：
		项目是什么；
		项目与运营的关系；
		什么是项目管理；
		项目经理是什么样的角色；
		项目干系人包括哪些。
 
	项目是什么？
	项目，是为了创造独特的产品、服务或成果的临时性工作。项目本身具有特殊性（...]]></description><category></category></item><item><title><![CDATA[使用DOM实现事件响应函数的注册、删除及事件传递的终止]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82404016</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82404016</guid><author>iteye_8125</author><pubDate>Fri, 24 Aug 2012 18:07:47 +0800</pubDate><description><![CDATA[	看代码， 如下：
 
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
&amp;lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot;&amp;gt;
&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;

	// inner的响应函数
	var clickInner = fu]]></description><category></category></item><item><title><![CDATA[JS中事件流测试]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82403698</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82403698</guid><author>iteye_8125</author><pubDate>Thu, 23 Aug 2012 16:42:24 +0800</pubDate><description><![CDATA[	以下是一段用于测试两种事件流的类型：捕获（capture）和冒泡（bubble），如下：
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
&amp;lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot;&amp;gt;
&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;

	do]]></description><category></category></item><item><title><![CDATA[最近该读哪些书（二）]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82402051</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82402051</guid><author>iteye_8125</author><pubDate>Sun, 19 Aug 2012 17:22:03 +0800</pubDate><description><![CDATA[	之前列举了最近的读书情况，大概明白了读书效果比较差的几个原因，但是究竟为什么会出现这样的情况，如何避免以后再出现类型的情况，需要在这篇文章里进行梳理。
	先说说为什么会出现这种情况。
	个人发展目标不清晰是主要原因。近一年时间开始尝试Team的管理，可是实践工作中处理的主要问题还是技术问题，组员的、自己的和其他项目组的。既然接受了问题就要想尽办法去解决，所以一直以来google的主要都是技术...]]></description><category></category></item><item><title><![CDATA[理解ThreadLocal]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82400877</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82400877</guid><author>iteye_8125</author><pubDate>Thu, 16 Aug 2012 16:01:18 +0800</pubDate><description><![CDATA[	跟以前的文章一样，还是先来一个例子。
	public class ThreadLocalDemo implements Runnable {
    //创建线程局部变量studentLocal，在后面你会发现用来保存Student对象
    private final static ThreadLocal&amp;lt;Student&amp;gt; studentLocal = new Thread...]]></description><category></category></item><item><title><![CDATA[使用JS闭包控制对象属性访问范围]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82400714</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82400714</guid><author>iteye_8125</author><pubDate>Thu, 16 Aug 2012 10:36:46 +0800</pubDate><description><![CDATA[

var util = function(){
	// default value;
	var varA = 'a',varB = 'b';
	
	return{
		init : function(varJson){
			varA = varJson.a;
			varB = varJson.b;
		},
		getValueA : function(){
			re...]]></description><category></category></item><item><title><![CDATA[Extjs源码——extend]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82400455</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82400455</guid><author>iteye_8125</author><pubDate>Wed, 15 Aug 2012 16:20:31 +0800</pubDate><description><![CDATA[	Extjs的extend方法是框架本身的一个基础方法，用于形成所有组件之间的继承结构。如果要理解extend方法实现，必须要理解javascript面向对象基础（可参考此文）。
	先写一个extend方法具体应用的例子：
	Person = function(atts){
	if(atts){
		this.id = atts.id;
		this.name = atts.name;...]]></description><category></category></item><item><title><![CDATA[最近该读哪些书（一）]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82398811</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82398811</guid><author>iteye_8125</author><pubDate>Sat, 11 Aug 2012 11:38:12 +0800</pubDate><description><![CDATA[	2011年我买了许多书，却没有认真的读。最近觉得要静下心来坚持读写书了，可是却不知道该读那本？先列举下有那些书可供选择。所有的书从内容上划分为：技术类和非技术类，从介质上分为纸质类和电子类。书不较多，也比较杂，我就想到哪写到哪。
 
	《java编程思想》	技术类	纸质、电子
	每次都是读这本书都是读了几天就坚持不住了，后来开始挑着读，还是坚持不住。
	《java与模式》		技术类	纸质...]]></description><category></category></item><item><title><![CDATA[Servlet中context和session相关listener]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82371388</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82371388</guid><author>iteye_8125</author><pubDate>Mon, 16 Jul 2012 15:36:42 +0800</pubDate><description><![CDATA[ 1.ServletContextAttributeListener   监听对ServletContext属性的操作，比如增加/删除/修改   2.ServletContextListener    监听ServletContext,当创建ServletContext时，激发contextInitialized (ServletContextEvent sce)方法；当销毁ServletCont...]]></description><category></category></item><item><title><![CDATA[应用设计模式之策略模式（Reflection）]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82367917</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82367917</guid><author>iteye_8125</author><pubDate>Mon, 09 Jul 2012 15:58:16 +0800</pubDate><description><![CDATA[	前两篇文章介绍了结合静态代理和简单工厂对策略进行应用，这里介绍使用反射方式应用策略模式。
	定义反射策略类：
	/**
 * @author alex
 *
 */
public class StratagemReflection {
	
	private AbstractDao dao;
	
	public StratagemReflection(String classN...]]></description><category></category></item><item><title><![CDATA[应用设计模式之策略模式（Factory）]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82367913</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82367913</guid><author>iteye_8125</author><pubDate>Mon, 09 Jul 2012 15:48:06 +0800</pubDate><description><![CDATA[	上一篇介绍了策略模式结合静态代理对策略进行应用，这里介绍结合简单工厂对策略模式的应用。
	定义策略枚举：
 
public enum DaoType {
	
	/**
	 * hibernate 
	 */
	HIBERNATE,
	
	/**
	 * ibatits
	 */
	IBATITS
}
 	定义策略工厂：
	/**
 * @author alex...]]></description><category></category></item><item><title><![CDATA[应用设计模式之策略模式（Context）]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82367734</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82367734</guid><author>iteye_8125</author><pubDate>Mon, 09 Jul 2012 10:45:06 +0800</pubDate><description><![CDATA[策略模式：定义的固定的接口并有一系列不同类型的具体实现，能够在程序中动态使用这些具体的实现。
策略模式常与代理模式、工厂模式一起使用，以实现策略之间的灵活切换。
 
基础类/接口：
 
package dp;

public abstract class AbstractDao {
	
	public abstract Object getById();
	
	public ...]]></description><category></category></item><item><title><![CDATA[Javascript原型链]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82365750</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82365750</guid><author>iteye_8125</author><pubDate>Thu, 05 Jul 2012 17:59:22 +0800</pubDate><description><![CDATA[以一段代码认识原型链。
 
//Animal构造函数
function Animal(name){
    this.name = name;
}
//Animal原型对象
Animal.prototype = {
    id:&quot;Animal&quot;,
    sleep:function(){
        alert(&quot;sleep&quot;);
    }
}
 
var d...]]></description><category></category></item><item><title><![CDATA[Oracle优化器]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82364693</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82364693</guid><author>iteye_8125</author><pubDate>Tue, 03 Jul 2012 17:04:20 +0800</pubDate><description><![CDATA[

Oracle的优化器有两种优化方式,即基于规则的优化方式(Rule-Based Optimization，简称为RBO)和基于代价的优化方式(Cost-Based Optimization，简称为CBO)，在Oracle8及以后的版本,Oracle强列推荐用CBO的方式
    RBO方式：优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则。比如我们常见的，当一个where...]]></description><category></category></item><item><title><![CDATA[Oracle查询不走索引]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82364117</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82364117</guid><author>iteye_8125</author><pubDate>Mon, 02 Jul 2012 23:20:50 +0800</pubDate><description><![CDATA[	今天在进行sql条有的时候，发现子查询中总是不走索引，对于的字段是建立了索引了的，可是不管怎么折腾就是不通过索引进行查询。网上对oracle查询不走索引的解释包括数据量较小（不值得走索引）、包含统计函数、未建立主键、对应列为nullable等等。后来，在与另外的同事讨论时才知道，原来是因为索引结果过多而进行全表遍历。表中总数据量为1千万，而索引对应条件查询的结果有500多万，在进行执行计划分析时...]]></description><category></category></item><item><title><![CDATA[跨站点请求伪造防范(转载)]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82360456</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82360456</guid><author>iteye_8125</author><pubDate>Thu, 28 Jun 2012 11:52:35 +0800</pubDate><description><![CDATA[ 
CSRF 的防范机制有很多种，防范的方法也根据 CSRF 攻击方式的不断升级而不断演化。常用的有检查 Refer 头部信息，使用一次性令牌，使用验证图片等手段。出于性能的考虑，如果每个请求都加入令牌验证将极大的增加服务器的负担，具体采用那种方法更合理，需要谨慎审视每种保护的优缺点。
1. 检查 HTTP 头部 Refer 信息，这是防止 CSRF 的最简单容易实现的一种手段。根据 RFC ...]]></description><category></category></item><item><title><![CDATA[AppScan中的安全漏洞类型及解决方案]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82359430</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82359430</guid><author>iteye_8125</author><pubDate>Mon, 25 Jun 2012 16:56:14 +0800</pubDate><description><![CDATA[ 记录下近期项目中使用AppScan发现的安全漏洞，在后续持续跟踪：
1. 内部IP泄露；
2.检测到应用程序检测脚本；
3.HTML敏感信息泄露；
4.跨站点请求伪造；
5.发现内部IP泄露模式；
6.已解密的登录请求；（明文发送请求参数）
7.会话标识未更新；（不要接受外部创建的会话标识）
8.SQL盲注；
9.登录错误消息凭证枚举；
 
其中“跨站点请求伪造”类型的安全...]]></description><category></category></item><item><title><![CDATA[BOM对象]]></title><link>https://blog.youkuaiyun.com/iteye_8125/article/details/82358465</link><guid>https://blog.youkuaiyun.com/iteye_8125/article/details/82358465</guid><author>iteye_8125</author><pubDate>Thu, 21 Jun 2012 11:22:22 +0800</pubDate><description><![CDATA[
 记录下BOM对象！]]></description><category></category></item></channel></rss>