- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要创建一个可以独立使用或在更大的应用程序中使用的组件。独立使用时,它不需要数据库,也不需要任何与数据库/ORM 相关的依赖项。当用作更大应用程序的一部分时,某些类确实会通过 JPA/Hibernate 持久保存到数据库中。
我在想组件中的域对象不会有任何注释(由于要求没有任何与 ORM 相关的依赖项)。在较大的应用程序中,然后我将对这些领域对象进行子类化……这大约是我所做的。
通常,我使用字段级注释。是否有可能与上述情况有关?我认为不是。
另一个人认为我必须切换到注释属性。在这种情况下,我会扩展未注释的域对象,覆盖所有属性,并对它们进行注释。 child 只是具有所需注释的委托(delegate)。这看起来像是很多工作/代码。
具有讽刺意味的是,我认为如果我使用我们最近放弃的 hbm.xml,这会更容易实现。我是否遗漏了一些注释?
最佳答案
JPA 注释实际上是您唯一的依赖项。如果有人以 POJO(非 DB)方式使用您的对象,那么他们所需要的只是 JPA 注释 jar,无论如何,对于大多数应用程序服务器而言,它实际上位于类路径中。
当然,仅仅将注解作为依赖项是非常合理的,这不像是你需要拖入整个 hibernate 并且它有很多 friend 。
正如您所研究的那样,另一种方法是对该实体使用 hbm。这并没有那么糟糕,因为 hibernate 非常乐意在单个 SessionFactory 中混合注释和 hbm 样式实体,并且您仍然可以使用字段访问,因此不需要损害类的公共(public)接口(interface)。
关于hibernate - JPA/hibernate : Can I have a Parent without annotations and a Child with,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1274553/
我是一名优秀的程序员,十分优秀!