[英]How to custmize FieldNamingStrategy in spring-data-mongo
在spring-data-mongo中,這個接口的功能還可以擴展嗎?
我想要的是在mongodb中保存CamelCaseToUnderline並查詢UnderlineToCamelCase。
我看到了部分源代碼,它具有最終的FieldNamingStrategy。如果我想對它進行通用化,它必須在實例化之前,怎么做?
public class BasicMongoPersistentProperty extends AnnotationBasedPersistentProperty<MongoPersistentProperty> implements MongoPersistentProperty {
....
private final FieldNamingStrategy fieldNamingStrategy;
public BasicMongoPersistentProperty(Field field, PropertyDescriptor propertyDescriptor, MongoPersistentEntity<?> owner, SimpleTypeHolder simpleTypeHolder, FieldNamingStrategy fieldNamingStrategy) {
super(field, propertyDescriptor, owner, simpleTypeHolder);
this.fieldNamingStrategy = fieldNamingStrategy == null ? PropertyNameFieldNamingStrategy.INSTANCE : fieldNamingStrategy;
if (isIdProperty() && getFieldName() != ID_FIELD_NAME) {
LOG.warn("Customizing field name for id property not allowed! Custom name will not be considered!");
}
}
...
}
嗨,這是從Spring Boot附錄中獲得的
# MONGODB (MongoProperties)
spring.data.mongodb.field-naming-strategy= # Fully qualified name of the FieldNamingStrategy to use
您可以立即使用以下策略
CamelCaseSplittingFieldNamingStrategy
CamelCaseAbbreviatingFieldNamingStrategy
SnakeCaseFieldNamingStrategy
如果這些都不滿足您的需求,請隨時擴展它們
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.