http://www.cnblogs.com/wangchenyang/archive/2011/08/16/2140744.htmlhttp://blog.csdn.net/sweetwxh/article/details/2067139