methodNameList = Lists.newArrayList();
for (Method method : methodList) {
diff --git a/src/main/java/util/ClassUtil.java b/src/main/java/util/ClassUtil.java
index fe5c271..ffe9907 100644
--- a/src/main/java/util/ClassUtil.java
+++ b/src/main/java/util/ClassUtil.java
@@ -1,6 +1,5 @@
package util;
-import com.esotericsoftware.reflectasm.MethodAccess;
import com.google.common.collect.Lists;
import java.lang.reflect.Field;
@@ -9,21 +8,12 @@ import java.util.Arrays;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
-import static constant.Constant.*;
-
/**
* @author 志军
* @date 2020-1-5 16:00:00
- * 其实你不用担心类似 ##fieldCache.get(zClass.getName())这样的代码在一个方法里面写了很多遍会处理多次
- * 可以了解一下##方法内联
*/
public class ClassUtil {
- /**
- * 类名#方法 - 方法索引 缓存
- */
- private static ConcurrentHashMap cache = new ConcurrentHashMap();
-
/**
* 类 - Field数组 缓存
*/
@@ -35,46 +25,6 @@ public class ClassUtil {
private static ConcurrentHashMap> methodCache = new ConcurrentHashMap>();
- /**
- * 获取get方法
- *
- * @param fieldName 类属性名称
- * @param zClass 类.class
- * @return GetMethod
- */
- public static Integer getGetMethod(String fieldName, Class zClass) {
- //获取下标的方式非常方便,本质上,如果使用getDeclareMethod方法,还需要考虑继承的问题
- MethodAccess access = MethodAccess.get(zClass);
- String getMethodName = GET + String.valueOf(fieldName.charAt(0)).toUpperCase() + fieldName.substring(1);
- String keyName = zClass.getName() + WELL_NUMBER + getMethodName;
- if (cache.get(keyName) == null) {
- cache.put(keyName, access.getIndex(getMethodName));
- return access.getIndex(getMethodName);
- }
-
- return cache.get(keyName);
- }
-
-
- /**
- * 获取set方法
- *
- * @param fieldName 类属性名称
- * @param zClass 类.class
- * @return SetMethod
- */
- public static Integer getSetMethod(String fieldName, Class zClass) {
- String setMethodName = SET + String.valueOf(fieldName.charAt(0)).toUpperCase() + fieldName.substring(1);
- String keyName = zClass.getName() + WELL_NUMBER + setMethodName;
- MethodAccess access = MethodAccess.get(zClass);
- if (cache.get(keyName) != null) {
- return cache.get(keyName);
- }
- cache.put(keyName, access.getIndex(setMethodName));
- return access.getIndex(setMethodName);
- }
-
-
static List getAllFieldWithSuper(Class zClass) {
if (fieldCache.get(zClass.getName()) != null) {
return fieldCache.get(zClass.getName());
diff --git a/src/main/java/util/CollectionUtil.java b/src/main/java/util/CollectionUtil.java
index f302c27..598b175 100644
--- a/src/main/java/util/CollectionUtil.java
+++ b/src/main/java/util/CollectionUtil.java
@@ -16,9 +16,8 @@ public class CollectionUtil {
@SuppressWarnings("unchecked")
- public static Collection buildDiffCollection(Object originValue, Object targetValue, Class returnValue) throws IllegalAccessException,
+ public static Collection buildDiffCollection(Object originValue, Object targetValue, Class collectionClass) throws IllegalAccessException,
InstantiationException {
- //数组为空的判断这边需要考虑的只有一个为空另一个不为空,因为在外面已经进行了其他两种情况的处理了
if (null == targetValue) {
return (Collection) originValue;
}
@@ -26,7 +25,7 @@ public class CollectionUtil {
return null;
}
- Object collection = returnValue.newInstance();
+ Object collection = collectionClass.newInstance();
for (Object value : (Collection) originValue) {
if (((Collection) targetValue).contains(value)) {
diff --git a/src/main/java/util/MapUtil.java b/src/main/java/util/MapUtil.java
index c322809..10bf406 100644
--- a/src/main/java/util/MapUtil.java
+++ b/src/main/java/util/MapUtil.java
@@ -5,7 +5,7 @@
package util;
-import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.collections4.CollectionUtils;
import java.util.List;
import java.util.Map;
diff --git a/src/main/test/ContractTest.java b/src/main/test/ContractTest.java
index b255cd6..c9b9417 100644
--- a/src/main/test/ContractTest.java
+++ b/src/main/test/ContractTest.java
@@ -9,13 +9,13 @@ public class ContractTest {
public static void main(String[] args) throws InstantiationException, IllegalAccessException {
-// testSimple();
-// testObject();
-// testSimpleMap();
-// testSimpleList();
-// testListList();
-// testListObject();
-// testListObjectRewriteEqual();
+ testSimple();
+ testObject();
+ testSimpleMap();
+ testSimpleList();
+ testListList();
+ testListObject();
+ testListObjectRewriteEqual();
}
private static void testObject() throws InstantiationException, IllegalAccessException {