diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/relation/AbstractRelation.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/relation/AbstractRelation.java index 0cbf77d5..4e20de1a 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/relation/AbstractRelation.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/relation/AbstractRelation.java @@ -83,7 +83,7 @@ public abstract class AbstractRelation { this.dataSource = dataSource; - this.selfField = ClassUtil.getFirstField(entityClass, field -> field.getName().equals(selfField)); + this.selfField = ClassUtil.getFirstField(entityClass, field -> field.getName().equalsIgnoreCase(selfField)); this.selfFieldWrapper = FieldWrapper.of(entityClass, selfField); //以使用者注解配置为主 @@ -94,12 +94,13 @@ public abstract class AbstractRelation { //当指定了 valueField 的时候,一般是 String Integer 等基本数据类型 this.targetEntityClass = (StringUtil.isNotBlank(valueField) && targetTableInfo != null) ? targetTableInfo.getEntityClass() : relationFieldWrapper.getMappingType(); - this.targetField = ClassUtil.getFirstField(targetEntityClass, field -> field.getName().equals(targetField)); + this.targetField = ClassUtil.getFirstField(targetEntityClass, field -> field.getName().equalsIgnoreCase(targetField)); if (this.targetField == null) { throw new IllegalStateException("Can not find field by name \"" + targetField + "\" from class: " + targetEntityClass.getName()); } this.targetFieldWrapper = FieldWrapper.of(targetEntityClass, targetField); + this.valueField = valueField; this.onlyQueryValueField = StringUtil.isNotBlank(valueField);