GAE中JDO对长文本的存取问题

研究gae几天了,可是水平太菜了,遇到了一大堆问题,在这里记录下,希望高手们能不吝赐教,以后将解决方法一并整理,以方便其他同仁碰到类似的问题可以找到有效的解决方法。

 

问题(一)最多能保存500个character

 

长文本在描述对象,或者保存内容中是经常用到的。但是gae的对象中的String字段只能保存500个字符一下,超出就会报错,在google搜索了一大圈,包括其论坛,找到部分价值的解决方法。只需将长文本字段的声明应为com.google.appengine.api.datastore.Text类型

@Persistent(serialized="true", defaultFetchGroup="true")

//@Enumerated

private  Text  content;

 

但是我们从页面中取得的几乎是String 类型,因此要保存的时候需要做一个转换

Text content = new Text(str);

把页面上的长str转换为com.google.appengine.api.datastore.Text类型才能保存

 

目前的问题:

1.有没有自带的convert或者方法直接转换?

2.每个对象类只要有text类型都要转换,如何处理?

3.因为是用DWR框架,如何取出这个长文本字段?

 

解决办法:

就是对Text 类型的对象的 setter 和 getter方法进行处理

private Text content;

public String getContent(){

       return this.content.stringValue().toString();

}

 

public void setContent(String content){

       this.content = new Text(content);

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值