如何在 Hibernate 中使用外键?

发布于 2024-10-19 17:52:11 字数 964 浏览 1 评论 0 原文

我是休眠新手。这是我的问题。我可以这样做:

package = session.createQuery("from Package").list();
session.getTransaction().commit();

但我真正想要的是 SQL 中的这个:

select * from package,product where product.nome='television' and package.idProduct = product.id

我该怎么做?

这些是我的 POJO:

public class Package implements java.io.Serializable {

  private PackageId id;
  private User user;
  private Product product;
  private int quant;
  private char mode;
  private String unit;
  private String description;

public class PackageId implements java.io.Serializable {

  private int id;
  private int idProduct;

public class Product  implements java.io.Serializable {

  private int id;
  private String name;
  private Set packages = new HashSet(0);

这些 POJO 是由 Netbeans 生成的。

这个配置对吗?

http://pastebin.com/gBUdKke0

I'm new to Hibernate. This is my problem. I can do this:

package = session.createQuery("from Package").list();
session.getTransaction().commit();

But what I really want is this in SQL:

select * from package,product where product.nome='television' and package.idProduct = product.id

How do I do that?

These are my POJOs:

public class Package implements java.io.Serializable {

  private PackageId id;
  private User user;
  private Product product;
  private int quant;
  private char mode;
  private String unit;
  private String description;

public class PackageId implements java.io.Serializable {

  private int id;
  private int idProduct;

public class Product  implements java.io.Serializable {

  private int id;
  private String name;
  private Set packages = new HashSet(0);

These POJOs were generated by Netbeans.

Is this configuration right?

http://pastebin.com/gBUdKke0

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

许你一世情深 2024-10-26 17:52:11

您已经在使用 HQL。使用 HQL,您可以选择多个对象,而不仅仅是一个或一组对象字段。

select product, package 
from Product product
join product.packages package
where product.name = 'television' 

请参阅 select 例如。

You're already working with HQL. With HQL you can select multiple objects not just one or just a set of object fields.

select product, package 
from Product product
join product.packages package
where product.name = 'television' 

See HQL reference for select for examples.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文