import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Date;
import org.apache.commons.lang.ArrayUtils;
public class BeanHelper {
public static <T> T noNullStringAttr(T cls) {
Field[] fields = cls.getClass().getDeclaredFields();
Field[] parendFields = cls.getClass().getSuperclass().getDeclaredFields();
if (ArrayUtils.isEmpty(fields) && ArrayUtils.isEmpty(parendFields)) {
return cls;
}
for (Field field : fields) {
if ("String".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, "");
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Date".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, new Date());
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("int".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Integer".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("long".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0l);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Long".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0l);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Float".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, Float.parseFloat("0"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("float".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, Float.parseFloat("0"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("List".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, new ArrayList<>());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
for (Field field : parendFields) {
if ("String".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, "");
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Date".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, new Date());
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("int".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Integer".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("long".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0l);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Long".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, 0l);
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("Float".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, Float.parseFloat("0"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("float".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, Float.parseFloat("0"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
if ("List".equals(field.getType().getSimpleName())) {
field.setAccessible(true);
try {
Object value = field.get(cls);
if (value == null) {
field.set(cls, new ArrayList<>());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
return cls;
}
}
java 将空字段赋值
最新推荐文章于 2024-01-02 16:30:45 发布