簡體   English   中英

Java - 在 mysql 中存儲 HashSet

[英]Java - Store HashSet in mysql

我將如何 go 關於在 mysql 表中存儲大小未知的 HashSet。 我知道我可以遍歷它並將其存儲到一個長文本字段中。

但是,當我檢索該字段並將其臨時存儲到字符串中時,它將使用額外的 memory 來存儲大量信息。

有沒有簡單的方法來存儲一個 HashSet?

帶有索引列的 SQL 表基本上是 hash 集。

您不應該嘗試將 HashSet 的二進制表示形式存儲(持久)在表中。 您應該將 HashSet 的數據存儲(持久化)為行和列,然后將該數據讀入 Java 端的 HashSet。

換句話說,您應該使用數據庫直接存儲數據,而不是保存保存數據的 Java 集合的序列化表示。 這就是數據庫的意義所在……以結構化、一致的方式存儲/持久化數據。 如果您真正需要做的就是序列化一個 HashSet,那么為什么還要麻煩數據庫呢?

我會將其轉換為JSON並將其存儲為文本。

有一些庫可以輕松地與 JSON 相互轉換 - 例如谷歌 gson

是的。 表中單獨記錄中的每個元素都具有“父”表的外鍵。 Yhay 是 JPA 處理它的方式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM