Mirror DSL

联合创作 · 2023-09-28 22:01

Mirror DSL 是一个用来简化 Java 的反射编程的类库,类似于 BeanUtils

如果直接使用 Java 的反射(Reflection) API,那么代码可能很长,如下:

Field toSet = null;
for (Field f : target.getClass().getDeclaredFields()) {
   
//Get all fields DECLARED inside the target object class
   
if (f.getName().equals("field")) {
       
toSet = f;
   
}
}
if (toSet != null && ((toSet.getModifiers() & Modifier.STATIC) == 0)
       
&& ((toSet.getModifiers() & Modifier.FINAL) == 0)) {
   
toSet.setAccessible(true);
    toSet.set
(target, value);
}


而使用 Mirror DSL 只要短短的一行代码:

ReflectionUtil.setField(target, fielName, value);
浏览 5
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报