通过HQL

时间:2019-03-13 19:37:54

标签: java

我有一个数据库。我是从IDEA连接到它的。

餐厅菜单的项目以及Menu类中数据字段的描述中,我表示了指向我的桌子的链接或链接(@TABLE):

@Entity
 @Table(name="menu")
 public class Menu {

这是我查询HQL的方法:

private static void priceFromTo(){
Scanner sc = new Scanner(System.in);
System.out.println("Input minimum price: ");
Double min = sc.nextDouble();
System.out.println("Input the maximum price: ");
Double max = sc.nextDouble();
System.out.println("We have these dishes with your price : ");
System.out.println();

Query query = em.createQuery("SELECT menu FROM Menu menu WHERE menu.price BETWEEN :min AND :max", Menu.class);
query.setParameter("max",max);

query.setParameter(“ min”,min);     列表清单= query.getResultList();

System.out.println(“列表结果的大小=” + list.size());

它不会发出任何错误,但是不会在数据库中进行更改(它不会从数据库接收数据),我已经尝试删除某些内容并将其输出到控制台。现在使用大小LIST检查它是否有效,但是您猜到了,尽管数据库中有足够的合适的行,但LIST.size = 0。

也许它没有连接到数据库,但是即使在日志中它也指向我的数据库。

如有必要,我将通过GitHub共享更多代码,但我认为这是不必要的。

1 个答案:

答案 0 :(得分:0)

您是否尝试过将日志转为详细信息,并查看实际的SQL输出是什么?

请参见here

该命令可能类似于

log4j.logger.org.hibernate=verbose