} //根据对象获取所有字段的值 protected void setFieldOfStringType(S entity, String[] fields, String oldValue, String newValue) { if (entity == null || fields == null || fields.length == 0) { return; } Class> clazz = entity.getClass(); String value; PropertyDescriptor pd; try { for (String field : fields) { pd = new PropertyDescriptor(field, clazz); if (pd.getPropertyType() != String.class) { continue; } value = (String) pd.getReadMethod().invoke(entity); if (value != oldValue) { continue; } pd.getWriteMethod().invoke(entity, newValue); } } catch (Exception e) { e.printStackTrace(); } } protected void setCreateTimeAndUpdatedTime(S entity, String createdTimeField, String updatedTimeField) { if (entity == null) { return; } Class> clazz = entity.getClass(); try { PropertyDescriptor createdTimeProperty = new PropertyDescriptor(createdTimeField, clazz); PropertyDescriptor updatedTimeProperty = new PropertyDescriptor(updatedTimeField, clazz); if (createdTimeProperty.getPropertyType() != Date.class || updatedTimeProperty.getPropertyType() != Date.class) { return; } if (entity.getId() == null) { createdTimeProperty.getWriteMethod().invoke(entity, new Date()); } updatedTimeProperty.getWriteMethod().invoke(entity, new Date()); } catch (Exception e) { e.printStackTrace(); } }
java反射获得属性值_java反射通过get方法获得属性值
最新推荐文章于 2023-03-31 10:46:11 发布