gpt4 book ai didi

java - 如何使用hibernate连接两个表

转载 作者:行者123 更新时间:2023-11-29 03:24:06 24 4
gpt4 key购买 nike

我想使用 HQL 或 Criterial 连接两个表

表格是

  • 购物车表(cartId,bookid,customeremailid,quantity)
  • 图书表(bookId,bookName,bookPrice,bookQuantity)

我的sql查询是这样的

select count(c.cartId) as cartId,b.bookName as bookName,c.customeremailid as customeremailid,sum(b.bookPrice)as c.price,c.quantity from Book b,Cart c where  c.customeremailid='"+customeremailid+"' and b.bookId=c.bookid

这将给出 cartId 的计数和 bookPrice 的总和

我将此结果存储到 List<Cart>

以下是 cart POJO变量

private int bookid,cartId;
private String customeremailid,bookName,bookDescription,image;
private int quantity;
private long price;

HQL 查询:

String sql="select count(c.cartId) as cartId,b.bookName as bookName,c.customeremailid as customeremailid,sum(b.bookPrice)as price,c.quantity from Book b,Cart c where  c.customeremailid='"+customeremailid+"' and b.bookId=c.bookid";
Query q=s.createSQLQuery(sql);
Cartlist=q.setResultTransformer(Transformers.aliasToBean(Cart.class)).list();


for(Cart c :Cartlist)
{
System.out.println("in cart : "+c.getCartId());
System.out.println("in cart : "+c.getPrice());
}

我不知道如何在 Hibernate 中执行此操作

请建议谢谢

最佳答案

使用下面的 hibernate Criteria 示例代码加入:

List cats = sess.createCriteria(Cat.class)
.createAlias("kittens", "kt")
.createAlias("mate", "mt")
.add( Restrictions.eqProperty("kt.name", "mt.name") )
.list();

引用:https://docs.jboss.org/hibernate/orm/3.5/reference/en/html/querycriteria.html#querycriteria-associations

关于java - 如何使用hibernate连接两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39052753/

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