http://blog.csdn.net/daniel_ustc/article/details/18005925 http://jingyan.baidu.com/article/ab69b270def74f2ca7189fe9.html