http://www.cnblogs.com/hoojo/archive/2011/06/08/2075201.html http://www.cnblogs.com/hoojo/archive/2011/06/08/2075201.html