http://www.cnblogs.com/wuhuacong/archive/2010/01/20/1652271.html http://www.cnblogs.com/wuhuacong/archive/2010/01/15/1648612.html