http://www.cnblogs.com/xd502djj/archive/2010/09/22/1832912.html http://wenku.baidu.com/view/16398a4233687e21af45a979.html