参见:http://www.cnblogs.com/SkySoot/archive/2012/02/20/2360492.html
http://www.cnblogs.com/SkySoot/archive/2012/02/26/2369068.html
http://www.cnblogs.com/SkySoot/archive/2012/02/28/2372030.html
http://www.cnblogs.com/SkySoot/archive/2012/02/29/2373906.html