http://blog.csdn.net/flydream0/article/details/8543525/ http://www.cnblogs.com/gakusei/articles/1585211.html