Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java hibernate中的逻辑名称是什么?_Java_Hibernate_Jpa - Fatal编程技术网

Java hibernate中的逻辑名称是什么?

Java hibernate中的逻辑名称是什么?,java,hibernate,jpa,Java,Hibernate,Jpa,我不熟悉hibernate,很难理解hibernate中逻辑名称的用法?我读过这个 上面写着: 单一NamingStrategy契约实际上结合了单独的关注点,这些关注点现在被单独建模为隐式NamingStrategy和物理NamingStrategy 我不明白这里讨论的两个问题是什么? 据我所知,我们有这样一个计划: Java实体类属性->逻辑名称->物理名称。 为什么我们需要逻辑名称? 它说有两个阶段,为什么我们需要两个阶段?据我所知,第一个阶段是在没有指定名称的情况下创建一个隐式名称。从这里

我不熟悉hibernate,很难理解hibernate中逻辑名称的用法?我读过这个

上面写着:

单一NamingStrategy契约实际上结合了单独的关注点,这些关注点现在被单独建模为隐式NamingStrategy和物理NamingStrategy

我不明白这里讨论的两个问题是什么? 据我所知,我们有这样一个计划: Java实体类属性->逻辑名称->物理名称。 为什么我们需要逻辑名称?
它说有两个阶段,为什么我们需要两个阶段?

据我所知,第一个阶段是在没有指定名称的情况下创建一个隐式名称。从这里开始的第2阶段,名称将被转换为物理名称。在此阶段,您可以执行一些命名约定,例如您的公司。如果你没有必要执行这样的约定,那么这些名称将保持不变same@XtremeBaumer但为什么我们需要一个隐式名称(即第一阶段)?。仔细阅读下面的段落
2.2.1。隐含策略
2.2.2。物理命名策略
。没有比这更好的解释了,我认为
2.2命名策略
将对象模型映射到关系数据库的一部分是将名称从对象模型映射到相应的数据库名称。Hibernate将此过程视为两个阶段:第一阶段是从域模型映射确定正确的逻辑名称。逻辑名称可以由用户显式指定(例如使用@Column或@Table),也可以由Hibernate通过隐式NamingStrategy协定隐式确定。第二是将该逻辑名称解析为物理名称,该物理名称由PhysicalNamingStrategy合同定义
@XtremeBaumer,您引用的链接与我在问题中提到的链接相同。我觉得很难从那里理解,因此提出了这个问题。