http://www.cnblogs.com/xia520pi/archive/2012/04/08/2437875.html http://www.cnblogs.com/xia520pi/archive/2012/01/02/2310118.html http://www.cnblogs.com/xia520pi/archive/2012/04/22/2464934.html