Spring data mongodb Entity 字段有以下定义java
@Indexed(unique=true) private String uid;
Spring 应用启动的时候会执行createIndexes
以下所示spring
想知道是在什么地方执行的createIndexes
的?mongodb
java.lang.reflect.Field#getAnnotation
而且添加进入断点的条件:ui
annotationClass.getName().contains("org.springframework.data.mongodb.core.index.Indexed")
最终定位到是在以下代码处执行建立索引操做的spa
org.springframework.data.mongodb.core.index.MongoPersistentEntityIndexCreator#createIndex