|
|
|
@ -1,5 +1,10 @@
|
|
|
|
|
package cn.estsh.i3plus.pojo.base.util;
|
|
|
|
|
|
|
|
|
|
import java.lang.reflect.Field;
|
|
|
|
|
import java.lang.reflect.Method;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
public class StringUtil {
|
|
|
|
|
|
|
|
|
|
public static boolean isEmpty(Object obj){
|
|
|
|
@ -10,4 +15,78 @@ public class StringUtil {
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取对象所有属性名
|
|
|
|
|
* @param clazz
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static String[] getFields(Class clazz) {
|
|
|
|
|
Field[] fields = clazz.getDeclaredFields();
|
|
|
|
|
String[] fieldNames = new String[fields.length];
|
|
|
|
|
for(int i=0;i<fields.length;i++){
|
|
|
|
|
fieldNames[i]=fields[i].getName();
|
|
|
|
|
}
|
|
|
|
|
return fieldNames;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取对象所有属性名
|
|
|
|
|
* @param clazz
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static List<String> getFieldList(Class clazz) {
|
|
|
|
|
Field[] fields = clazz.getDeclaredFields();
|
|
|
|
|
Field[] superFields = clazz.getSuperclass().getDeclaredFields();
|
|
|
|
|
List<String> fieldNames = new ArrayList<>();
|
|
|
|
|
for(int i = 0;i < fields.length; i++){
|
|
|
|
|
fieldNames.add(fields[i].getName());
|
|
|
|
|
}
|
|
|
|
|
for(int i = 0;i < superFields.length; i++){
|
|
|
|
|
fieldNames.add(superFields[i].getName());
|
|
|
|
|
}
|
|
|
|
|
// fieldNames.add("id");
|
|
|
|
|
// fieldNames.add("organizeCode");
|
|
|
|
|
// fieldNames.add("isValid");
|
|
|
|
|
// fieldNames.add("isDeleted");
|
|
|
|
|
// fieldNames.add("createUser");
|
|
|
|
|
// fieldNames.add("createDatetime");
|
|
|
|
|
// fieldNames.add("modifyUser");
|
|
|
|
|
// fieldNames.add("modifyDatetime");
|
|
|
|
|
return fieldNames;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据属性名和对象获取属性对应的值
|
|
|
|
|
* @param fieldName
|
|
|
|
|
* @param o
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static Object getFieldValueByName(String fieldName, Object o) {
|
|
|
|
|
try {
|
|
|
|
|
String firstLetter = fieldName.substring(0, 1).toUpperCase();
|
|
|
|
|
String getter = "get" + firstLetter + fieldName.substring(1);
|
|
|
|
|
Method method = o.getClass().getMethod(getter, new Class[] {});
|
|
|
|
|
Object value = method.invoke(o, new Object[] {});
|
|
|
|
|
return value;
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 拼接对象所有属性名
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static String getFieldNames(String[] fieldNames) {
|
|
|
|
|
StringBuffer stringBuffer = new StringBuffer();
|
|
|
|
|
for (String fieldName : fieldNames) {
|
|
|
|
|
stringBuffer.append(fieldName).append(",");
|
|
|
|
|
}
|
|
|
|
|
int stringBufferLength = stringBuffer.length();
|
|
|
|
|
stringBuffer.delete(stringBufferLength - 1, stringBufferLength);
|
|
|
|
|
return stringBuffer.toString();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|