http://www.oschina.net/code/snippet_86425_22997
调整结构