如何在不创建实体的情况下获取静态引用数据?

How to get static reference data without creating entity?

我正在开发一个 Spring mvc 应用程序,我需要在其中的 HTML 下拉列表中显示国家/地区列表。我在数据库中有一个国家 table,其中有 2 个字段,countryid 和 countryname。如何在不创建国家模型的情况下使用 Hibernate 获取国家 ID 和名称?我试过以下代码:

Query query = session.createSQLQuery("select countryid, countryname from country");
List list = query.list();

问题是列表包含对象,我不知道如何从对象中提取 countryid 和 countryname。

query.list() returns 对象数组列表,列表中的每个元素代表从 SQL 查询返回的一行。

因此,对于您的情况,您可以这样做

List<Object[]> list = (List<Object>)query.list();
for (Object[] country : list) {
    System.out.println("Country id: " + country[0] + ", country name: " + country[1]);
}