【问题标题】:Does it work to put Java XML and persistance annotations on the same bean?将 Java XML 和持久性注释放在同一个 bean 上是否有效?
【发布时间】:2014-01-12 00:53:31
【问题描述】:

我还没有实现过,但我想知道是否可以将 XML 注释和持久性注释放在同一个 bean 上。

我问的原因是因为我想使用 Spring OXM 读取一些 XML,将 XML 写入域对象,这些域对象也是映射到数据库的域对象(该映射已经完成)。

【问题讨论】:

    标签: java spring annotations persistence


    【解决方案1】:

    注释只是元数据。就他们自己而言,他们不会对您的代码做任何事情。您需要使用反射来利用它们。所以,是的,您可以在类和字段上添加任意数量的注释。

    您的持久性框架将读取持久性注释,而您的 XML 解析器将读取 XML 注释。

    例如。

    @Entity // JPA
    @XmlRootElement(name = "book") // JAXB
    @SuppressWarnings(value = "random") // whatever other annotation
    public class User  {
    
        @Id
        @GeneratedValue
        @GenericGenerator(name = "incremental", strategy = "increment")
        @XmlElement
        private Long userID;
    
        // more
    }
    

    【讨论】:

    • 我正在使用一些 java bean 来表示一个数据域,其中代码大约 70% 是使用 JAXB、JPA、Jackson 和 Lombok 进行注释的。混搭吧!
    猜你喜欢
    • 1970-01-01
    • 2013-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多