gpt4 book ai didi

java - AppEngine 数据存储 : storing list of strings with more than 500 characters

转载 作者:行者123 更新时间:2023-11-30 08:28:43 25 4
gpt4 key购买 nike

我的 GWT 实体包含一个属性 myDescriptions,它是一个包含 10 个字符串的列表,可以包含超过 500 个字符。

当我尝试为列表中的任何元素赋值时,比如元素 3,可能会发生两种情况:- myDescriptions.get(3) = stringWithLessThan500Chars; -> 正确完成- myDescriptions.get(3) = stringWithMoreThan500Chars; -> 它作为元素 9(最后一个)存储为 datastore.Text

有什么解决办法吗?我尝试将 myDescriptions 创建为 datastore.Text 的列表,但我无法从 EntityProxy 访问它们。

最佳答案

GAE 有两个数据存储类型的字符串属性:

  1. 短文本字符串索引属性,最多可存储 500 个字符。在 Java 中,它被转换为 String
  2. 长文本字符串未索引属性,最多可存储 1MB 的字符。在 Java 中,它被转换为 Text

在您的情况下,解决方案是遍历列表并将 Text 替换为其字符串值:

if(myDescriptions.get(x) typeof Text) {
String text = ((Text) myDescriptions.get(x)).getValue();
myDescriptions.set(x, text);
}

关于java - AppEngine 数据存储 : storing list of strings with more than 500 characters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20047079/

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