【问题标题】:Hashmap (of strings) in grails domain Classgrails域类中的Hashmap(字符串)
【发布时间】:2012-01-22 04:36:12
【问题描述】:

目前我有一个带有字符串 HashMap 的 Grails 域类(HashMap 元数据 = new HashMap()。

数据库持久性在创建(顺便存储为 BLOB)、启动、关闭等时一切正常...

我有一种讨厌的感觉,由于某种原因,这不太好,如果是这样,为什么?如果没有,那没关系。

版本等 Grails 2.0、Groovy 1.8、Java 1.6、Tomcat 6 MySQL 5.latest

【问题讨论】:

  • 什么是讨厌的感觉?原因是什么?
  • 当你因为某种原因感到恶心时,我们怎么知道?
  • 这种讨厌的感觉可能是因为将信息存储在 blob 中使得无法查询,而数据库用于能够对存储的数据执行查询。
  • @JBNizet 哈哈,在这种情况下没关系。我没有理由产生那种“讨厌的感觉”,到目前为止没有任何问题,只是想确保我没有忽略任何对其他人来说显而易见的特定问题。

标签: java mysql grails hashmap


【解决方案1】:

我想说这可能不是最佳实践,因为您永远不知道这个字符串列表将来会如何增长。

一个简单的例子可能是将来,您想知道添加特定字段的时间,这意味着您必须更改整个域模型并将哈希图移到子域中。

根据经验,将其建模为具有名称和值属性的子元素可能更容易。

这也使得针对这个 hashmap 编写查询变得更加容易,因此如果您想查找具有键 'blah' 的元素,您可以使用动态查找器和相关的查询机制。

【讨论】:

  • 同意。在这种情况下,HashMap 包含可以被视为属性的更多或更少的内容(尽管完全不同),并且没有像“通常”那样使用域模型。在这种情况下,看起来这不会有任何问题,感谢您让我表达对你们的关注。我会称之为回答。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-13
  • 1970-01-01
  • 1970-01-01
  • 2012-06-03
  • 1970-01-01
  • 2012-02-29
  • 1970-01-01
相关资源
最近更新 更多