如何修改你的数据模型(GAE for java)
2010-10-02 11:48
405 查看
网上有篇介绍如何修改GAE数据模型的文章《Google App Engine中如何修改你的数据模型》,该文章为民间高手翻译,在谷歌官方文档中的名字为《更新模型的架构》,这两篇文章为同一篇英文文章的不同中文翻译,内容是介绍如何修改在现的GAE程序的数据模型,这对GAE程序的代码升级至关重要,因为在线程序往往会有一些有价值的数据希望在代码升级后能正常使用。这篇文档是针对使用python进行GAE开发而言的,对使用java进行GAE开发并不适用。在网上找了好久,没有找到适用于java的资料。一个偶然的机会竟然在GAE的帮助文件里找到了相关的内容:文章《定义数据类》的“对象字段和实体属性”部分,真是踏破铁鞋无觅处,得来全不费功夫。本人仔细阅读了该部分内容,并对相关的规则进行了验证,现总结如下: 1.数据类 增加字段; 如果将一个数据存储区实体载入对象中,对于该对象中的某一个字段,实体中没有对应的属性,且该字段是可设为 null 的单值类型,则该字段将设置为 null。在将该对象保存回数据存储区时,null 属性将在数据存储区中被设置为 null 值。如果该字段不是可设为 null 的值类型,则载入没有对应属性的实体将引发异常。 例如:若增加的字段为String,则从数据库中查询该对象时,增加的字段值为null; 若增加的字段为long,则从数据库中查询该对象时,会引发异常,解决方法之一:将字段类型由long改为Long 2.数据类 删除字段 如果实体具有一个在对象中没有对应字段的属性,则无法从该对象访问该属性。如果将对象保存回数据存储区,将删除这个额外的属性。 3.数据类 修改字段类型 如果某个实体具有一个值类型与对象中对应字段的类型不同的属性,则 JDO 会尝试将该值转换成字段类型。如果无法将该值转换成字段类型,则 JDO 将引发 ClassCastException。在值为数字(长整型或双精度浮点型)的情况下,将对该值进行转换 (convert),而不是对类型进行转换 (cast)。如果数字属性值超出字段类型的表示范围,则转换将溢出,而不会引发异常。 4.数据类 修改字段名称 字段名成修改相当于删除原有字段,再增加一个新字段。 参考资料: Google App Engine中如何修改你的数据模型 更新模型的架构 定义数据类 |
相关文章推荐
- (GAE文档翻译)Google App Engine中如何修改你的数据模型
- Google App Engine:如何修改你的数据模型
- Java如何大批量从json数据源中按指定符号隔字符串,并修改、删除数据
- 我遇到的java笔试题->Swing组件JList的列表数据修改了,如何通知JList改变显示?
- 如何利用SOE for Java实现数据编辑
- 如何在dotConnect for Oracle中检索和修改数据
- yii2.0之-模型中attributeLabels()函数的作用 和修改数据表中的字段后如何更新model中的字段
- java-mybaits-00501-案例-映射分析-订单商品数据模型
- JAVA 如何创建\删除\修改\复制目录及文件
- 如何修改数据?alter和update的区别?
- 如何在 Java 中正确使用 wait, notify 和 notifyAll – 以生产者消费者模型为例
- 数据模型封装--行列都不固定(java)
- Oracle 如何修改列的数据类型 (不积跬步,无以至千里)
- Java如何像Python一样简洁地构造和解析Json 数据
- CSDN Androidclient开展(两):基于如何详细解释Java使用Jsoup爬行动物HTML数据
- 如何在利用Navicte for Mysql 快速导入数据
- Oracle 如何修改列的数据类型
- 如何对建模型数据进行预处理
- SQLite升级数据库时修改表字段,如何保留以前的数据
- Java中,当表单含有文件上传时,提交数据的如何读取