http://wenku.baidu.com/view/9070f05c312b3169a451a4af.html http://www.cnblogs.com/batys/archive/2011/10/25/2223942.html http://wenku.baidu.com/view/2d25e10d4a7302768e9939d7.html