http://www.cnblogs.com/John-Connor/archive/2012/04/28/2473911.html
http://www.cnblogs.com/John-Connor/archive/2012/05/03/2478821.html
http://www.cnblogs.com/John-Connor/archive/2012/04/28/2473911.html
http://www.cnblogs.com/John-Connor/archive/2012/05/03/2478821.html