gpt4 book ai didi

java - 如何使用反射以外的方式填充 JavaBean

转载 作者:行者123 更新时间:2023-12-01 15:53:30 26 4
gpt4 key购买 nike

你知道我是否可以填充javabean,但我不想使用反射。

例如,我有这个 xml 模板来填充它

示例 XML 文件

<property name = "card" value = "cdd"/>

public class Customer {
private String card;

public void setCard(String card) {
this.card = card;
}

public String getCard() {
}

}

我想在 Java bean 上调用 setCard,但我不想使用反射因为我以前用过它而且速度很慢,

还有其他选择吗?例如,Hibernate 是如何做到这一点的?

谢谢卡洛

最佳答案

从 XML 填充 JavaBean 的唯一更快的方法(即比使用反射更快)是编写或生成一些绑定(bind)代码,这些代码使用从 XML(在本例中是从 XML 属性)提取的值来调用 setter。

  • 手动编写绑定(bind)代码是最简单的方法...只要您不需要编写太多内容。

  • 代码可以作为源代码生成并编译。

  • 可以使用字节码生成技术(例如 BCEL 或 ASM)生成代码。

  • 可能存在一些现有的 XML 到 JavaBean 绑定(bind)生成器,尽管现有的绑定(bind)很可能使用反射而不是代码生成。

<小时/>

但是,尚不清楚是否值得费心避免反射(reflection)。虽然反射的成本相对较高,但 XML 的成本可能要高得多。我建议您在决定使用更复杂的实现方法之前进行一些分析。

关于java - 如何使用反射以外的方式填充 JavaBean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5529662/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com