1. http://blog.csdn.net/happen_zhang/article/details/12761747
2. http://blog.csdn.net/hguisu/article/details/7569968