http://blog.csdn.net/weiwenhp/article/details/8006587
http://www.cnblogs.com/hnrainll/archive/2011/05/17/2048548.html
http://blog.csdn.net/hondely/article/details/6779887