http://blog.csdn.net/chayangdz/article/details/76347465
总结的很到位:
http://www.cnblogs.com/java-zhao/p/5121944.html