深copy
public static <T> T copyInstance(Object source, Class<T> tClass) {
if (null == source) {
return null;
}
T target;
try {
target = tClass.newInstance();
BeanUtils.copyProperties(source, target);
} catch (Exception e) {
throw new UnexpectedStatusException(GAPStatus.COPY_FAILE, e);
}
return target;
}