import org.joor.Reflect;
public class JOORExample {
public static void main(String[] args) {
Class<?> dynamicClass = Reflect.on("com.example.DynamicClass")
.create()
.get();
Reflect.on(dynamicClass)
.set("fieldName", "fieldValue");
Reflect.on(dynamicClass)
.method("methodName")
.call();
Reflect.onClass("com.example.ExistingClass")
.method("methodName")
.intercept((proxy, method, args, setAccessible) -> {
System.out.println("Before method execution");
Object result = Reflect.on(proxy)
.call(args);
System.out.println("After method execution");
return result;
});
}
}
<dependency>
<groupId>org.joor</groupId>
<artifactId>joor</artifactId>
<version>0.9.6</version>
</dependency>