我的Java模型中有{{1>}字段带注释。
有没有办法以编程方式获取xml元素名称?
答案 0 :(得分:3)
假设我们有注释实体
@XmlRootElement
public class Product {
String name;
@XmlElement(name="sss")
public void setName(String name) {
this.name = name;
}
}
以下代码将打印" sss"使用java Reflection API。这里'产品'是Product class的对象
import java.lang.reflect.Method;
...
Method m = product.getClass().getMethod("setName",String.class);
XmlElement a = m.getAnnotation(XmlElement.class);
String nameValue = a.name();
System.out.println(nameValue);
如果您需要从私有字段获取@XmlElement注释属性,您可以使用以下内容:
Field nameField = product.getClass().getDeclaredField("name");
nameField.setAccessible(true);
XmlElement a = nameField.getAnnotation(XmlElement.class);
String nameValue = a.name();
System.out.println(nameValue);