mirror of
https://gitee.com/dromara/hutool.git
synced 2025-05-07 06:08:00 +08:00
fix code
This commit is contained in:
parent
66def6fddf
commit
4f29f43bcc
@ -65,13 +65,21 @@ public class DynaBean implements Cloneable, Serializable {
|
|||||||
*
|
*
|
||||||
* @param bean 原始Bean
|
* @param bean 原始Bean
|
||||||
*/
|
*/
|
||||||
public DynaBean(Object bean) {
|
public DynaBean(final Object bean) {
|
||||||
Assert.notNull(bean);
|
Assert.notNull(bean);
|
||||||
if (bean instanceof DynaBean) {
|
if (bean instanceof DynaBean) {
|
||||||
bean = ((DynaBean) bean).getBean();
|
// 已经是动态Bean,则提取对象
|
||||||
|
this.bean = ((DynaBean) bean).getBean();
|
||||||
|
this.beanClass = ((DynaBean) bean).getBeanClass();
|
||||||
|
} else if (bean instanceof Class) {
|
||||||
|
// 用户传入类,默认按照此类的默认实例对待
|
||||||
|
this.bean = ConstructorUtil.newInstance((Class<?>) bean);
|
||||||
|
this.beanClass = (Class<?>) bean;
|
||||||
|
} else {
|
||||||
|
// 普通Bean
|
||||||
|
this.bean = bean;
|
||||||
|
this.beanClass = ClassUtil.getClass(bean);
|
||||||
}
|
}
|
||||||
this.bean = bean;
|
|
||||||
this.beanClass = ClassUtil.getClass(bean);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -151,7 +159,7 @@ public class DynaBean implements Cloneable, Serializable {
|
|||||||
} else {
|
} else {
|
||||||
final PropDesc prop = BeanUtil.getBeanDesc(beanClass).getProp(fieldName);
|
final PropDesc prop = BeanUtil.getBeanDesc(beanClass).getProp(fieldName);
|
||||||
if (null == prop) {
|
if (null == prop) {
|
||||||
throw new BeanException("No public field or set method for {}", fieldName);
|
throw new BeanException("No public field or set method for '{}'", fieldName);
|
||||||
}
|
}
|
||||||
prop.setValue(bean, value);
|
prop.setValue(bean, value);
|
||||||
}
|
}
|
||||||
|
@ -70,7 +70,6 @@ public class DynaBeanTest {
|
|||||||
Assertions.assertEquals("test for 李华", invoke);
|
Assertions.assertEquals("test for 李华", invoke);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void beanByInstanceClazzConstructorTest() {
|
public void beanByInstanceClazzConstructorTest() {
|
||||||
final String name_before = "李华";
|
final String name_before = "李华";
|
||||||
|
Loading…
Reference in New Issue
Block a user