gpt4 book ai didi

java - 对 JPA 连接的 SQL 查询

转载 作者:行者123 更新时间:2023-11-30 06:36:56 25 4
gpt4 key购买 nike

今天才开始使用 JPA,所以我还是个新手。
怎么说
"SELECT login.ID, userID, logInTime, logOutTime, user.ID AS 'uID', surname FROM login, user WHERE login.userID = user.ID" JPA?
我需要通过 userID 连接两个表。
我在网上浏览了几个教程,但找不到答案。
谢谢!

最佳答案

疯狂猜测我猜你的域模型至少包含两个实体 UserLogin后者代表类似 session 的东西。 (基数 User -1:n- Session )

我想象中的实体:

@Entity
class User {
@OneToMany(mappedBy="user")
private List<Login> logins;
...
}

@Entity
class Login {
@ManyToOne
private User;
...
}

检索所有Login s:

jpql: "from Login"

(默认情况下会获取关联的 User 对象。在@ManyToOne 端,默认获取类型是预先获取。)

检索所有User s:

jpql: "select u from User u join fetch u.logins"

(默认情况下不获取关联的 List<Login> 对象。在@OneToMany 端,默认获取类型是延迟获取。)

JPA 入门:openJPA documentation(查看实体设计的第 4 章和第 5 章以及 JPQL 的第 10 章。openJPA 文档的一般 JPA 部分适用于所有 JPA 实现。)

附言如果您在问题中提供更多细节,会更容易。

关于java - 对 JPA 连接的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4082059/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com