Hibernate中session.get(类,可序列化标识符)中的标识符

Hibernate中session.get(类,可序列化标识符)中的标识符,hibernate,Hibernate,可能重复: 我刚开始使用Hibernate,无法从api中理解这一点。 session.get的api说明: 对象org.hibernate.Session.get(类clazz,可序列化id) 返回给定实体类的持久实例 给定标识符,如果没有此类持久实例,则为null。(如果 实例已与会话关联,请返回 实例。此方法从不返回未初始化的实例。) 这里的标识符是什么意思。在大多数示例中,它们将其命名为1L(可能是因为表中的主键很长?),我不理解其本质 这里的标识符是什么意思 实体的标识符是用@Id或

可能重复:

我刚开始使用Hibernate,无法从api中理解这一点。 session.get的api说明:

对象org.hibernate.Session.get(类clazz,可序列化id)

返回给定实体类的持久实例 给定标识符,如果没有此类持久实例,则为null。(如果 实例已与会话关联,请返回 实例。此方法从不返回未初始化的实例。)

这里的标识符是什么意思。在大多数示例中,它们将其命名为1L(可能是因为表中的主键很长?),我不理解其本质

这里的标识符是什么意思

实体的标识符是用
@Id
@EmbeddedId
注释的属性

如果您的类使用
long
代理标识符,您将按如下方式使用会话:

session.get(MyClass.class, 1);
如果您的类使用嵌入id,则将该
@embeddeble
类的实例传递给get方法

session.get(MyClass.class, new MyClassIdentifier("String", 1));
这里的标识符是什么意思

实体的标识符是用
@Id
@EmbeddedId
注释的属性

如果您的类使用
long
代理标识符,您将按如下方式使用会话:

session.get(MyClass.class, 1);
如果您的类使用嵌入id,则将该
@embeddeble
类的实例传递给get方法

session.get(MyClass.class, new MyClassIdentifier("String", 1));

如果Date是ID呢?那么如何指定标识符。将其注释为@ID-顺便说一句,这并不是你问题的正确答案。不,我的意思是-会话中的参数应该是什么。get(MyClass.class,?);如果日期是Id.session.get(MyClass.class,myDate);如果Date是ID呢?那么如何指定标识符。将其注释为@ID-顺便说一句,这并不是你问题的正确答案。不,我的意思是-会话中的参数应该是什么。get(MyClass.class,?);如果日期是Id.session.get(MyClass.class,myDate);