http://blog.csdn.net/wufenglong/article/details/5778862 http://www.cnblogs.com/linzheng/archive/2011/01/23/1942328.html