0

entityName.setProperty("textProperty", text) 「テキスト」がテキスト型オブジェクトである場所を使用して、いくつかの大きなテキスト データをテキスト オブジェクトとして Google アプリ エンジン データストアに保存します。テキストを取得しようとするとentityName.getProperty("textProperty"); 、オブジェクトを返し、それを Text オブジェクトとして保存するので、それを Text を使用してキャストするだけ ですが、アプリケーションが文字列として保存するように見えるので、そうし(Text)entityName.getProperty("textProperty"); ます しかし、それは私にこれを与えます java.lang.ClassCastException: java.lang.String cannot be cast to com.google.appengine.api.datastore.Text(String)entityName.getProperty("textProperty");java.lang.ClassCastException: com.google.appengine.api.datastore.Text cannot be cast to java.lang.String

混乱しています。データストアから Text オブジェクトを取得するにはどうすればよいですか?

4

2 に答える 2

1

Google APP Engine で TextProperty を JPA にマッピングする際に、次のコードを使用して問題を解決しました。

Text プロパティのコンテンツを定義しました。Set を実行するたびに、Text を渡します。Get を実行するたびに、getValue() メソッドを使用して String を返します。それは私の作品です。

@Column(name="content")
private Text content;
public void setContent(Text content) {
    this.content = content;
}
public String getContent() {
    return content.getValue();
}
于 2013-06-05T13:12:05.057 に答える
1

Text text = new Text(String);文字列からテキストへのキャストと、テキストから文字列へのキャスト を使用しString s = text.getValue();ます。

于 2012-05-18T08:51:16.137 に答える