Maven引用:
<!-- https://mvnrepository.com/artifact/cglib/cglib -->
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.2.2</version>
</dependency>
不要引用太高级的版本。会存在兼容问题。本身有内部依赖。
核心类:
import net.sf.cglib.beans.*;
import java.util.*;
public class DynamicBean {
private Object object = null; //动态生成的类
private BeanMap beanMap = null; //存放属性名称以及属性的类型
public DynamicBean() {
super();
}
public DynamicBean(Map propertyMap) {
this.object = generateBean(propertyMap);
this.beanMap = BeanMap.create(this.object);
}
/**
* @param propertyMap
* @return
*/
private Object generateBean(Map propertyMap) {
BeanGenerator generator = new BeanGenerator();
Set key