gpt4 book ai didi

java - Hibernate 查询在结果中产生奇怪的符号

转载 作者:行者123 更新时间:2023-12-01 09:35:32 24 4
gpt4 key购买 nike

我正在使用 java 和 hibernate。

我刚刚将我的项目设置为使用 hibernate,但是当我执行查询时,我得到了奇怪的符号/语义。

我收到以下奇怪的符号/语义,但我不确定为什么?

正在查询所有托管实体...
执行:来自 CarProduct WHERE carid='27883836'
hibernate :从 car_product carproduct0_ 中选择 carproduct0_.car_id 作为 car1_0_、carproduct0_.attribute 作为 attribut2_0_、carproduct0_.product_id 作为 Product3_0_、carproduct0_.value 作为 value4_0_,其中 carproduct0_.car_id='278838836'

<小时/>

这是我的主要类(class):

import java.util.Map;

public class Main {
private static final SessionFactory ourSessionFactory;
private static final ServiceRegistry serviceRegistry;

static {
try {
Configuration configuration = new Configuration();
configuration.configure();

serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
ourSessionFactory = configuration.buildSessionFactory(serviceRegistry);
} catch (Throwable ex) {
throw new ExceptionInInitializerError(ex);
}
}

public static Session getSession() throws HibernateException {
return ourSessionFactory.openSession();
}

public static void main(final String[] args) throws Exception {
final Session session = getSession();
try {
System.out.println("querying all the managed entities...");
final Map metadataMap = session.getSessionFactory().getAllClassMetadata();
for (Object key : metadataMap.keySet()) {
final ClassMetadata classMetadata = (ClassMetadata) metadataMap.get(key);
final String entityName = classMetadata.getEntityName();
final Query query = session.createQuery("from " + entityName + " WHERE carid='278838836'");
System.out.println("executing: " + query.getQueryString());
for (Object o : query.list()) {
System.out.println(" " + o);
}
}
} finally {
session.close();
}
}
}

最佳答案

您看到的是完全正常的 SQL 查询 where SQL aliases被使用。

例如因为

from car_product carproduct0_

我们可以在查询的其他部分使用此别名,如下所示:

select carproduct0_.car

这些别名的命名当然不太人性化。

关于java - Hibernate 查询在结果中产生奇怪的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38981500/

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