http://www.cnblogs.com/loveyakamoz/archive/2011/07/21/2112804.html
http://blog.csdn.net/wangpeng047/article/details/19624529