java反射给字段赋值【项目公共字段赋值】
protected <T> void setBeanField(T t, LoginUser loginUser) {
try {
// 自行填写对应数据
// long snowId = SnowFlakeUtil.getSnowId();
// String userCode = loginUser.getOpenId();
Date now = new Date();
Class<?> clazz = t.getClass();
// id
Method setId = clazz.getMethod("setId", Long.class);
setId.invoke(t, snowId);
// 创建人
Method setCreateBy = clazz.getMethod("setCreateBy", String.class);
setCreateBy.invoke(t, userCode);
// 创建时间
Method setCreateTime = clazz.getMethod("setCreateTime", Date.class);
setCreateTime.invoke(t, now);
// 修改人
Method setUpdateBy = clazz.getMethod("setUpdateBy", String.class);
setUpdateBy.invoke(t, userCode);
// 修改时间
Method setUpdateTime = clazz.getMethod("setUpdateTime", Date.class);
setUpdateTime.invoke(t, now);
} catch (Exception e) {
throw new RuntimeException(e);
}
}