有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何设置一些属性而不是xml元素

在Java中,我将@XmlRootElement(name = "MyClass")添加到我的类中,它让类中的所有属性成为xml元素,现在我有了一个属性,它不需要是xml元素,我能做什么?非常感谢。乔治

@XmlRootElement(name = "MyClass")
public class MyClass{
    public String A ;
    public String B ;

    //what xml anotation to be set here ?
    public String notXmlelement ; 

}

共 (2) 个答案

  1. # 1 楼答案

    如果有一个字段不应该作为XML持久化(我假设您使用的是JAXB),那么将其标记为@XmlTransient

    @XmlTransient
    public String notXmlelement; 
    
  2. # 2 楼答案

    不包括不到一半的房产

    如果要排除不到一半的映射字段/属性,则可以使用@XmlTransient执行此操作

    public Class {
    
        public String a;   // include
        public String b;   // include
        public String c;   // include
        @XmlTransient public String d;   // exclude
    
    }
    

    不包括超过一半的房产

    如果要排除一半以上的映射字段/属性,则可以指定@XmlAccessorType(XmlAccessType.NONE),然后只包含带注释的字段/属性

    @XmlAccessorType(XmlAccessType.NONE)
    public Class {
    
        public String a;   // exclude
        public String b;   // exclude
        public String c;   // exclude
        @XmlElement public String d;   // include
    
    }
    

    更多信息