JPA/Hibernate:我可以有一个没有注释的父级和一个带有注释的子级吗?

2024-04-12

我需要创建一个可以独立使用或在更大的应用程序中使用的组件。独立使用时,它不需要数据库,也不需要任何数据库/ORM 相关的依赖项。当用作较大应用程序的一部分时,某些类确实会通过 JPA/Hibernate 持久保存到数据库中。

我认为组件中的域对象不会有任何注释(因为要求没有任何 ORM 相关的依赖项)。在更大的应用程序中,我将对这些域对象进行子类化......这大约是我所做的。

通常,我使用字段级注释。是否有可能出现上述情况?我想不是的。

另一个人认为我必须转而注释属性。在这种情况下,我将扩展未注释的域对象,覆盖所有属性,并对它们进行注释。孩子只是一个带有所需注释的委托。这看起来像是很多工作/代码。

讽刺的是,我认为如果我使用 hbm.xml,这会更容易实现,而我们最近已经放弃了 hbm.xml。我是否遗漏了一些带有注释的内容?


JPA 注释实际上是您唯一的依赖项。如果有人以 POJO(非 DB)方式使用您的对象,那么他们所需要的只是 JPA 注释 jar,对于大多数应用程序服务器来说,无论如何,它实际上位于类路径上。

当然,将注释作为依赖项是相当合理的,您不需要拖入整个 hibernate,而且它有很多朋友。

正如您所研究的,另一种方法是对该实体使用 hbm。这并没有那么糟糕,因为 hibernate 非常乐意在单个 SessionFactory 中混合注释和 hbm 样式实体,并且您仍然可以使用字段访问,因此不需要损害类的公共接口。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JPA/Hibernate:我可以有一个没有注释的父级和一个带有注释的子级吗? 的相关文章

  • 我可以在方法体内使用注释吗?

    允许 Java 注释的语义将它们放置在某处在函数体内 例如注释特定的函数调用 语句或表达式 例如 class MyClass void theFunc Thing thing String s null Catching NullPoint
  • Set 内元素的 Hibernate 标准

    我有一个实体 其中包含一组另一个实体 Entity1 包含集合EntityTwos 我想为entityTwos 中的 id 字段创建搜索条件 我搜索过 但没有得到任何答案 有人有主意吗 谢谢 斯里 很容易 就像是 criteria crea
  • 当我尝试构建 JPQL 连接查询时,为什么会得到无效路径?

    我使用的是 JPA 2 1 Hibernate 4 3 6 Final 和 MySQL 5 5 37 如何编写执行联接的 JPQL 查询 我在下面尝试 final String jpqlQuery SELECT m FROM Message
  • 可以向 @ManyToMany Hibernate 额外表添加额外字段吗?

    我有这两类 表 Entity Table name course public class Course Id Column name courseid private String courseId Column name coursen
  • 迁移到 Hibernate 5.x

    我正在将我的应用程序从 Hibernate 3 迁移到 Hibernate 5 我们正在使用DatabaseMetadata类获得TableMetadata 因此使用TableMetadata对象获取数据库表列信息 如列大小 类型等 似乎在
  • 不可靠网络和低带宽的 Java ORM 策略

    我正在寻找 Hibernate 作为需要在不可靠网络中工作的系统 我们需要对一个中央数据库进行读写访问 但它可以通过一个相当不稳定的 Wi Fi 网络来访问 此外 可能会出现断电而导致应用程序无法完全关闭的情况 因此任何解决方案都必须具有能
  • Java SE + Spring Data + Hibernate

    我正在尝试使用 Spring Data Hibernate 启动 Java SE 应用程序 并且到目前为止已经完成了以下操作 配置文件 Configuration PropertySource classpath hibernate pro
  • 如何在 Java 9 中使用新的 BeanInfo 注解

    JEP 256 BeanInfo 注释 http openjdk java net jeps 256为JavaBean http download java net java jdk9 docs api java beans JavaBea
  • Android 改造参数化@Headers

    我正在使用 OAuth 每次发出请求时都需要将 OAuth 令牌放入标头中 我看到 Header注释 但是有没有办法让它参数化 以便我可以在运行时传入 这是概念 Header Authorization OAuth var api vers
  • 注释处理工具<-检查有效注释

    I have ColumnMetadata index 1 ColumnMetadata index 2 ColumnMetadata index 3 我必须使用 APT 检查索引号是否唯一 我不知道该怎么做 我看不懂教程 一般我在网上找资
  • withTransaction 和 withNewTransaction 有什么区别?

    以下动作有什么区别 def someAction User withTransaction and def someAction User withNewTransaction 我什么时候用什么 当 grails 操作仅包含 Transac
  • BigDecimal 的 JPA @Size 注释

    我该如何使用 SizeMySQL 的注释DECIMAL x y 列 我在用着BigDecimal 但是当我尝试包括 Size max它不起作用 这是我的代码 Size max 7 2 Column name weight private B
  • Hibernate @OneToMany 注释到底是如何工作的?

    我对 Hibernate 还很陌生 我正在通过教程学习它 我在理解到底如何一对多注释作品 所以我有这两个实体类 Student代表一个学生并且Guide代表指导学生的人 因此 每个学生都与一名向导相关联 但一名向导可以跟随多个学生 我想要一
  • 如何使用 WSDL 和 XSD 的注释生成 .NET 类

    有一些 XSD 和 WSDL 我想从它们生成 C 代码 我使用了 svcutil exe 但它不会从 XSD 注释生成 XML 注释
  • H2控制台看不到JAVA创建的表

    我已经从以下位置下载了 H2 控制台http www h2database com html download html http www h2database com html download html我已经在我的中配置了 URLjdb
  • 我需要在 Java 9 中使用哪个模块才能使用 JPA?

    我正在使用一个需要 JPA 的项目测试 Java 9 javax persistence 类 当我添加module info java并声明我的模块 下的所有类javax persistece包变得不可用 我搜索了很多 但找不到在 Java
  • 可空日期列合并问题

    我在 Geronimo 应用程序服务器上使用 JPA 和下面的 openjpa 实现 我也在使用MySQL数据库 我在更新具有可为空 Date 属性的对象时遇到问题 当我尝试合并 Date 属性设置为 null 的实体时 不会生成 sql
  • Java获取编译时安全方法名

    在使用反射类和注释时 我发现没有明确的方法以编译时安全的方式引用方法名称 我真正想要的是能够在注释中引用方法 可能看起来像 CallAfter method Foo class foo void Bar 目前 您只能使用字符串来执行此操作
  • 获取列名称以及 JSON 响应

    我有三个实体类 我编写了包含两个表的联接的查询 表 费用类别 Entity Table name ExpensesCategories public class ExpensesCategories Id GeneratedValue st
  • Jackson:将对象引用为属性

    在我的 java spring 应用程序中 我正在使用 hibernate 和 jpa 并使用 jackson 来填充数据库中的数据 这是用户类 Data Entity public class User Id GeneratedValue

随机推荐

  • 使用 FFmpeg 在特定时间将一个视频叠加在另一个视频上

    我正在尝试将一个视频与另一个视频叠加 我按照OP发布的原始命令进行操作here https stackoverflow com questions 35269387 ffmpeg overlay one video onto another
  • MySQL 语法和“OR”性能

    这个 MySQL 查询工作得很好 SELECT o id FROM descriptions programs d titles programs t programs o WHERE d object id o id AND MATCH
  • 检测触摸屏(ipad、iphone 等)的最佳方法?

    如果在 ipad 或 iphone 等触摸屏设备上查看页面 我需要向页面加载一些额外的 CSS 最简单的方法是什么 谢谢 对于 iPad 您可以尝试 if window Touch alert touch my ipad iphone ip
  • 错误消息:JSFiddle 中不允许 document.write

    当我尝试在 JSFiddle 上运行我的 JavaScript 文件之一时 收到以下错误消息 document write 在 JSFiddle 环境中是不允许的 并且可能会破坏你的小提琴 我该如何解决这个问题 Note 当我使用外部资源时
  • 尝试部署到 Google Cloud Run 时出现权限错误

    我在尝试将映像部署到云运行时遇到权限错误 gcloud beta run deploy endpoints proxy image gcr io endpoints release endpoints runtime serverless
  • Google Drive HTTP 403“访问未配置”错误

    我正在尝试将 Salesforce 的 DrEdit 示例应用程序安装到 GAE 上 应用程序运行 但保存或打开文件会导致 HTTP 403 访问未配置错误 我还尝试将 API Access gt Client ID 的值用于 Web 应用
  • android 编辑文本背景

    我想设置为我的 EditText背景 http img9 imageshack us f backgroundtext png 嗯 我也不知道该怎么解释 当有大量文本时垂直滚动启用 当用户滚动文本时 我需要 滚动 背景 现在我知道 当用户滚
  • 如何从 Firebase 中的 Android 应用创建空表? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在 Android 平台上开发实时应用程序 我想在 Firebase 数据库中添加一个具有特定名称且没有信息的表 这可能吗 我该怎
  • 无法加载 ResolveComReference 任务

    Win7 VS2017 ASP Net core应用程序 目标框架是4 6 当我尝试使用 CLI 构建项目时 在调用 dotnet 命令之前需要它 会发生错误 C Microsoft Common CurrentVersion target
  • NanoScroller 不触发自身

    下面的代码应该能够触发pane and slider适当地displaycss 属性根据纳米滚动文档 http jamesflorentino github com nanoScrollerJS 但是 滚动条不显示slider直到我在浏览器
  • 连接两个php变量

    我从这样的表单中获取文本和颜色 代码在管理 php
  • Android Content Provider 的实例化顺序

    对于我的应用程序 我需要先启动一个内容提供程序 据我所知 该顺序与 AndroidManifest 中的顺序无关 并且不是按字母顺序排列的 如何控制 Android 调用 Content Provider 的 onCreate 方法的顺序
  • 如何使用 Open XML SDK 将文本插入内容控件

    我正在尝试开发一种解决方案 该解决方案从 ASP Net 网页获取输入并将输入值嵌入到 MS Word 文档中的相应内容控件中 MS Word 文档还具有静态数据 以及一些要嵌入到页眉和页脚字段中的动态数据 这里的想法是解决方案应该基于 W
  • Bamboo 能否将 HTTP 400 Bad 请求解释为失败

    我们正在使用 CURL 向我们的应用程序之一发出外部 API 请求 如果该请求返回的值不是 200 我们希望ebamboo 的 构建 失败 目前 它正在过去 此外 响应中的消息中包含 错误 一词 我希望 Bamboo 能够解析脚本结果并根据
  • 为什么添加文本会改变 div 的边距[重复]

    这个问题在这里已经有答案了 我不明白为什么添加文本 do a div 似乎会改变浏览器解析 div 的方式 看起来边距顶部已更改 但事实并非如此 HTML div div class nav left left div div class
  • Mongo - 更新嵌套数组中的元素[重复]

    这个问题在这里已经有答案了 我有一个看起来像的文档 id 123xyz profile emails address email protected cdn cgi l email protection primary true addre
  • 在 HTML 中呈现字符串并保留空格和换行符

    我有一个带有详细信息页面的 MVC3 应用程序 作为其中的一部分 我有一个包含空格和换行符的描述 从数据库检索 当它被渲染时 新行和空格将被 html 忽略 我想对这些空格和新行进行编码 以便它们不会被忽略 你是怎样做的 我尝试了 HTML
  • NodeJS - 大量请求关闭后“套接字挂起”

    我已经被这个 套接字挂断 错误困扰了几天 我希望有人可以帮助我 我目前设置了两个 Node 程序 Node 中的 HTTP 服务器对每个节点都使用相同的数据进行响应 要求 HTTP 服务器响应来自 HTTP 服务器 1 的数据 对于每个请求
  • 为什么当某些内容已加载时 jQuery 会丢失“事件”(点击)?

    当我在侧边栏上选择页面时 我尝试使用下一个脚本加载内容 该脚本运行没有问题 if Modernizr history var newHash wrapperTag main content contentTag main content i
  • JPA/Hibernate:我可以有一个没有注释的父级和一个带有注释的子级吗?

    我需要创建一个可以独立使用或在更大的应用程序中使用的组件 独立使用时 它不需要数据库 也不需要任何数据库 ORM 相关的依赖项 当用作较大应用程序的一部分时 某些类确实会通过 JPA Hibernate 持久保存到数据库中 我认为组件中的域