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

在创建hibernate实体时,是否总是需要一个对象属性而不仅仅是id?

崔绍辉
2023-03-14

或者只有一个属性userid类型整数是有效的吗?这样,jpql查询如下所示:

select p from Post p where p.userid = :userid

共有1个答案

时仰岳
2023-03-14

您可以使用lazyfetch来实现这两个世界的最佳选择:

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="USER_ID")
private User user;

只有在访问user字段时才会获取用户数据。

您仍然可以根据查询获取所有帖子,而无需访问user表。

@OneToMany(fetch = FetchType.LAZY, mappedBy = "user")
private List<Post> posts;
 类似资料:
  • 问题内容: 我们有一些Hibernate getter方法,它们都用和标注。 如果没有相应的设置器,则会出现异常。为什么是这样? 在我们的例子中,我们派生了从getter返回的值(将其存储在DB中),而setter没有任何功能目的。因此,我们只有一个空方法可以解决错误情况。 问题答案: 正如其他人提到的那样,如果您注释属性getter方法,则Hibernate在从数据库读取值时会使用setter。

  • 问题内容: 所以,我不确定那是什么。如果在 ModuleA中 ,我有: 在 ModuleB中 ,我有: 在主程序中,我有: 因此,当我运行主程序时,我想我将创建两个猫鼬“实例”;一个连接到pathA,一个连接到pathB,对吗? 另外,在模块B中,在我连接到pathB之前,它是连接到pathA还是什么都没有? 谢谢。 问题答案: 我刚刚对最新的节点V0.4.6做了一些测试。我确认了以下内容: 从“

  • 问题内容: 我们有一些Hibernate getter方法,它们都用和标注。 如果没有相应的设置器,则会出现异常。为什么是这样? 在我们的例子中,我们派生了从getter返回的值(将其存储在数据库中),而setter没有任何功能目的。因此,我们只有一个空方法可以解决错误情况。 问题答案: 正如其他人提到的那样,如果您注释属性getter方法,则Hibernate在从数据库读取值时会使用setter

  • 根据文件,https://github.com/gulpjs/gulp/blob/master/docs/getting-started.md $npm安装--节省开发成本 到目前为止,我使用的所有npm模块都使用

  • 在静态编程语言接口中,属性是否使用空get/set语句声明有关系? 例如。。。 我很难注意到不同之处。 在实现接口时,我是否为属性使用getter/setters,或者我是否直接设置值似乎并不重要。 当通过java访问它们时,都有getters,都有getter和setters。

  • 问题内容: 我试图例如仅获取对象bob的ID列表,而不是bob的列表。可以使用HQL请求,但是我想知道是否可以使用条件? 一个例子 : 问题答案: 我认为您可以使用Projections做到这一点,例如