推荐blog: http://blog.csdn.net/leixiaohua1020/article/details/12234821 http://www.cnblogs.com/liu-jun/p/3457554.html