【问题标题】:Hibernate - Mapping a hql query to a HashMap<String, String>Hibernate - 将 hql 查询映射到 HashMap<String, String>
【发布时间】:2014-03-06 21:14:19
【问题描述】:

我已经看过这里的帖子了:

With Hibernate, how can I query a table and return a hashmap with key value pair id>name?

这有一个很好的答案,但是如果我希望我的 HashMap 的键是一个带空格的字符串呢?还是其他角色?

【问题讨论】:

    标签: java hibernate


    【解决方案1】:

    这可以正常工作...想想HashMap 的工作原理...它由哈希表支持。如果你有一些String,我们称之为key,那么根据Java 规范,任何对象的hashCode() 方法都必须是确定性的,即在对象的生命周期内调用时返回相同的哈希码值运行它的 JVM 实例。

    空格不会影响String 对象的哈希码。向字符串添加空格使其成为不同的String,因此会产生不同的哈希码。自己看:

    public static void main(String[] args) {
        Map<String, String> someMap = new HashMap<String, String>();
    
        someMap.put("some random key", "value");
    
        System.out.println(someMap.get("some random key"));
        System.out.println(" some random key ".hashCode()); // prints 1846300114
        System.out.println("some random key".hashCode()); // prints -2030143442
    
    }
    

    【讨论】:

      猜你喜欢
      • 2011-10-20
      • 1970-01-01
      • 2011-04-24
      • 1970-01-01
      • 1970-01-01
      • 2013-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多