http://www.cnblogs.com/emanlee/category/160107.html
http://blog.csdn.net/xiazdong/article/category/1226802