当前位置: 首页 > 知识库问答 >
问题:

什么是默认的 JPA 注释

宋英杰
2023-03-14

我正在开发一个使用 JPA 和Hibernate的项目,我刚刚注意到实体没有任何关系注释,例如@ManyToOne、@OneToOne等。所以我的问题是,JPA / Hibernate是否为每个案例添加了默认注释?

这里有一个例子

@Entity
@Table(name = "strategy")
public class Strategy extends TradingEntity implements Serializable {
    ...
@Valid
private List<Rule> rules;

JPA是否默认在此属性中添加@OneTo的注释?

共有1个答案

毋玺
2023-03-14

没有“默认”注释,但是一些JPA实现(例如,我一直在使用的DataN的核心)足够智能,可以计算出如果一个字段是一个实体类型的集合,那么它就是一个OneTo许多/ManyTo许多,并且默认获取和级联等事情。显然,您不能假设您的实现将具有这种逻辑,因此应该将您需要的内容(并且“JPA”什么也不做,而是您的实现将完成它)。显然,您可以在XML中指定相同的信息,因此可以没有注释

 类似资料:
  • 我正在使用JAXP XSLT API(javax.xml.transform)来转换xml文件。 TransformerFactory的javadoc表示:它使用以下有序查找过程来确定要加载的TransformerFactory实现类: 使用javax。xml。使改变TransformerFactory系统属性 使用JRE目录中的属性文件“lib/jaxp.properties”。此配置文件采用标

  • Kubernetes的pods(部署)活跃性和就绪性问题可以用这个初始延迟来配置----这意味着问题将在容器启动后的这多次发送之后开始。如果没有指定,默认值是多少?我好像找不到了。periodSeconds的默认值记录为10秒。 谢谢

  • 问题内容: Maven编译器插件的文档提到以下内容: 注解处理器: 要运行的注释处理器的名称。仅适用于JDK 1.6+。如果未设置,则默认注释处理器发现过程适用。 什么是 默认的注解处理器发现过程 吗?除了此配置标签,还有其他方法可以设置注释处理器吗? 我发现“注释处理工具入门(apt)”文档提到了 默认的发现过程 ,但是它适用于 工厂类 而不是处理器,并且不幸的是,它使用JDK中的和包。这是默认

  • 问题内容: 如果没有覆盖该方法,默​​认的实现是什么? 问题答案: 然后,此类从其祖先之一继承。如果它们都不覆盖它,则使用Object.hashCode。 从文档: 在合理可行的范围内,由Object类定义的hashCode方法确实为不同的对象返回不同的整数。(通常通过将对象的内部地址转换为整数来实现,但是JavaTM编程语言不需要此实现技术。) 因此默认实现是特定于JVM的

  • 问题内容: 我正在使用EC2服务器实例。使用以下命令安装Jenkins: 但是我需要在Jenkins服务器上安装软件,因此在我的EC2实例中 进入詹金斯服务器。然后我试着做 但是它提示我输入詹金斯密码。我已经在互联网上搜索了4个小时,没有任何东西可以帮助我在jenkins服务器中获得管理特权。 所以我在shell中使用以下命令来构建我的项目: 这是我得到的错误: 问题答案: 解决方法如下: 停止詹

  • 问题内容: UTF-8是Java中的默认编码吗? 如果没有,我怎么知道默认使用哪种编码? 问题答案: JVM的默认字符集是运行它的系统的默认字符集。对此没有特定的值,并且通常不应将默认编码视为任何特定的值。 可以在运行时通过对其进行访问,尽管这对你有用,但实际上你应该始终在明确指定编码的情况下这样做。