例如:
class Person {
String name;
}
我想从Person的实例中获取{:name "xxx}
。
我知道(from_json (.toJson person))
可以做到。
有没有更好的方法来实现它?
答案 0 :(得分:6)
您是否看过bean功能?上面的示例代码不遵循JavaBean规则,但如果您的对象执行(使用getter),那么bean将为您将其转换为Clojure映射。
public class Person {
private String name;
public Person(String n) {
this.name = n;
}
public String getName() {
return name;
}
}
像这样使用:
(def p (Person. "xyz"))
(bean p)
;=> {:name "xyz" :class Person}
答案 1 :(得分:0)
几年前,我写了一个小图书馆。