gpt4 book ai didi

java - 如何从查询中返回int?

转载 作者:行者123 更新时间:2023-12-02 03:03:06 26 4
gpt4 key购买 nike

我在我的 dao 实现中有这个方法,我试图从查询中返回 int 并将其放入 roomNumber int 变量中,但我不确定它是否是正确的语法......并且可能还有其他错误。在 Debug模式下,我看到 int roomNumber 字段没有获得任何值,当我跨过它时,它的值为 0。

@Override
public int getRoomNumber(int bookingId) {
Session session = sessionFactory.getCurrentSession();

Query query = session.createQuery("select room.roomId from Booking where bookingId=:bookingId");

query.setParameter("bookingId", bookingId);

int roomNumber = query.getFirstResult();

return roomNumber;
}

数据库中的预订表:

enter image description here

对于查询我也尝试过:

select room_room_id from Booking where bookingId=:bookingId

最佳答案

出于这些目的,有方法uniqueResult():

int roomNumber = ((Number)query.uniqueResult()).intValue();

编辑:如果您使用 hibernate 版本> 5.2.2,您可能需要将其更改为方法getSingleResult():

Hibernate UniqueResult Deprecated

关于java - 如何从查询中返回int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42176434/

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