mirror of
https://gitee.com/mybatis-flex/mybatis-flex.git
synced 2025-12-08 01:28:24 +08:00
close #I6ZPD1
This commit is contained in:
parent
a86551633c
commit
61eb072a14
@ -29,6 +29,7 @@ import javax.lang.model.element.*;
|
|||||||
import javax.lang.model.type.DeclaredType;
|
import javax.lang.model.type.DeclaredType;
|
||||||
import javax.lang.model.type.TypeKind;
|
import javax.lang.model.type.TypeKind;
|
||||||
import javax.lang.model.type.TypeMirror;
|
import javax.lang.model.type.TypeMirror;
|
||||||
|
import javax.lang.model.util.Elements;
|
||||||
import javax.lang.model.util.Types;
|
import javax.lang.model.util.Types;
|
||||||
import javax.tools.Diagnostic;
|
import javax.tools.Diagnostic;
|
||||||
import javax.tools.JavaFileObject;
|
import javax.tools.JavaFileObject;
|
||||||
@ -102,14 +103,14 @@ public class QueryEntityProcessor extends AbstractProcessor {
|
|||||||
private static final String allColumnsTemplate = " public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{@allColumns};\n\n";
|
private static final String allColumnsTemplate = " public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{@allColumns};\n\n";
|
||||||
|
|
||||||
private Filer filer;
|
private Filer filer;
|
||||||
// private Elements elementUtils;
|
private Elements elementUtils;
|
||||||
private Types typeUtils;
|
private Types typeUtils;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized void init(ProcessingEnvironment processingEnvironment) {
|
public synchronized void init(ProcessingEnvironment processingEnvironment) {
|
||||||
super.init(processingEnvironment);
|
super.init(processingEnvironment);
|
||||||
this.filer = processingEnvironment.getFiler();
|
this.filer = processingEnvironment.getFiler();
|
||||||
// this.elementUtils = processingEnvironment.getElementUtils();
|
this.elementUtils = processingEnvironment.getElementUtils();
|
||||||
this.typeUtils = processingEnvironment.getTypeUtils();
|
this.typeUtils = processingEnvironment.getTypeUtils();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -216,8 +217,6 @@ public class QueryEntityProcessor extends AbstractProcessor {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
TypeMirror typeMirror = fieldElement.asType();
|
|
||||||
|
|
||||||
Column column = fieldElement.getAnnotation(Column.class);
|
Column column = fieldElement.getAnnotation(Column.class);
|
||||||
if (column != null && column.ignore()) {
|
if (column != null && column.ignore()) {
|
||||||
continue;
|
continue;
|
||||||
@ -236,18 +235,17 @@ public class QueryEntityProcessor extends AbstractProcessor {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
TypeElement typeElement = null;
|
TypeMirror typeMirror = fieldElement.asType();
|
||||||
if (typeMirror.getKind() == TypeKind.DECLARED) {
|
Element element = typeUtils.asElement(typeMirror);
|
||||||
typeElement = (TypeElement) ((DeclaredType) typeMirror).asElement();
|
if (element != null) {
|
||||||
|
typeMirror = element.asType();
|
||||||
}
|
}
|
||||||
|
|
||||||
String typeString = typeMirror.toString().trim();
|
String typeString = typeMirror.toString().trim();
|
||||||
if (typeString.startsWith("(") && typeString.endsWith(")")) {
|
|
||||||
typeString = typeString.substring(1, typeString.length() - 1);
|
TypeElement typeElement = null;
|
||||||
}
|
if (typeMirror.getKind() == TypeKind.DECLARED) {
|
||||||
int lastIndexOf = typeString.lastIndexOf(":");
|
typeElement = (TypeElement) ((DeclaredType) typeMirror).asElement();
|
||||||
if (lastIndexOf > 0) {
|
|
||||||
typeString = typeString.substring(lastIndexOf + 1).trim();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//未配置 typeHandler 的情况下,只支持基本数据类型,不支持比如 list set 或者自定义的类等
|
//未配置 typeHandler 的情况下,只支持基本数据类型,不支持比如 list set 或者自定义的类等
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user