1. 参照:
http://www.cnblogs.com/xiegj/p/5669800.html
http://blog.csdn.net/u011080082/article/details/53813334
https://segmentfault.com/a/1190000008890926
http://blog.sina.com.cn/s/blog_659b48590100v6fa.html