@Override
public void evaluate(Method method, EvaluatorChain chain) {
if (method.getReturnType().isAnnotationPresent(Embeddable.class) &&
!method.isAnnotationPresent(Transient.class)) {
Map<String, AttributeOverride> overrides = getAttributeOverrides(method);
Class<?> embeddedClz = method.getReturnType();
for (Method embeddedMethod : Arrays.stream(embeddedClz.getMethods()) //
.filter(it -> it.isAnnotationPresent(Column.class)) //
.collect(toList())) {
String name = getPropertyName(embeddedMethod);
String columnName = null;
if (overrides.containsKey(name)) {
columnName = overrides.get(name).column().name();
} else {
columnName = embeddedMethod.getAnnotation(Column.class).name();
}
CopyAttribute attribute = new CopyAttribute();
attribute.getMethods().add(method);
attribute.getMethods().add(embeddedMethod);
attribute.setColumnName(columnName);
chain.add(attribute);
}
} else {
chain.doNext();
}
}
EmbeddedColumnEvaluator.java 文件源码
java
阅读 25
收藏 0
点赞 0
评论 0
项目:pedal-dialect
作者:
评论列表
文章目录