http://www.cnblogs.com/egmkang/archive/2011/09/26/2189548.html http://blog.csdn.net/strategycn/article/details/7865525