diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/BaseReflectorFactory.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/BaseReflectorFactory.java index 0b03371b..08f8da73 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/BaseReflectorFactory.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/BaseReflectorFactory.java @@ -18,6 +18,7 @@ package com.mybatisflex.core.table; import org.apache.ibatis.reflection.ReflectorFactory; public abstract class BaseReflectorFactory implements ReflectorFactory { + @Override public boolean isClassCacheEnabled() { return true; diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/IdInfo.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/IdInfo.java index 78b3cf44..ae6b3bc5 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/IdInfo.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/IdInfo.java @@ -23,14 +23,14 @@ public class IdInfo extends ColumnInfo { /** * id 生成策略 */ - private KeyType keyType = KeyType.None; + private KeyType keyType; /** - * 若 keyType 类型是 sequence, value 则代表的是 + * 1、若 keyType 类型是 sequence, value 则代表的是 * sequence 序列的 sql 内容 * 例如:select SEQ_USER_ID.nextval as id from dual - * - * 若 keyType 是 Generator,value 则代表的是使用的那个 keyGenerator 的名称 + *

+ * 2、若 keyType 是 Generator,value 则代表的是使用的那个 keyGenerator 的名称 */ private String value; diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfos.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfos.java index 1c9da731..c905fd08 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfos.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfos.java @@ -79,7 +79,6 @@ public class TableInfos { return getEntityClass((Class) type); } } - return null; } diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/util/ClassUtil.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/util/ClassUtil.java index 7d3810a3..96c00d5f 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/util/ClassUtil.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/util/ClassUtil.java @@ -27,7 +27,6 @@ import java.util.List; */ public class ClassUtil { - //proxy frameworks private static final List PROXY_CLASS_NAMES = Arrays.asList("net.sf.cglib.proxy.Factory" // cglib @@ -68,8 +67,8 @@ public class ClassUtil { public static T newInstance(Class clazz) { try { - Constructor constructor = clazz.getDeclaredConstructor(); - return (T) constructor.newInstance(); + Constructor constructor = clazz.getDeclaredConstructor(); + return constructor.newInstance(); } catch (Exception e) { e.printStackTrace(); } @@ -87,8 +86,7 @@ public class ClassUtil { return (T) ret; } } - - throw new IllegalArgumentException("Can not matched constructor by paras" + Arrays.toString(paras) + " for class: " + clazz.getName()); + throw new IllegalArgumentException("Can not find constructor by paras: \"" + Arrays.toString(paras) + "\" in class[" + clazz.getName()+"]"); } catch (Exception e) { e.printStackTrace(); } @@ -120,40 +118,6 @@ public class ClassUtil { } - public static String buildMethodString(Method method) { - StringBuilder sb = new StringBuilder() - .append(method.getDeclaringClass().getName()) - .append(".") - .append(method.getName()) - .append("("); - - Class[] params = method.getParameterTypes(); - int in = 0; - for (Class clazz : params) { - sb.append(clazz.getName()); - if (++in < params.length) { - sb.append(","); - } - } - - return sb.append(")").toString(); - } - - - public static boolean hasClass(String className) { - try { - Class.forName(className, false, getClassLoader()); - return true; - } catch (ClassNotFoundException e) { - return false; - } - } - - - public static ClassLoader getClassLoader() { - ClassLoader ret = Thread.currentThread().getContextClassLoader(); - return ret != null ? ret : ClassUtil.class.getClassLoader(); - } public static List getAllFields(Class cl) { List fields = new ArrayList<>(); @@ -161,6 +125,7 @@ public class ClassUtil { return fields; } + private static void doGetFields(Class cl, List fields) { if (cl == null || cl == Object.class) { return;