http://www.cnblogs.com/zhangchaoyang/articles/2649660.html http://blog.csdn.net/jackydai987/article/details/6227740