感受Java数据对象JDO 2.0查询语言的特点(3)

发布时间:2020-06-25 发布网站:脚本之家
价值2580元廖雪峰前端视频终终终于免费啦!
脚本之家收集整理的这篇文章主要介绍了感受Java数据对象JDO 2.0查询语言的特点(3)脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

厂商扩展的查询特性

  JDO厂商可以给JDOQL提供各种各样的特殊查询功能。每个厂商可以定义一组属于该厂商自己的扩展功能。如果你需要使用其中的功能,你需要将该厂商的扩展加到程序运行环境中。每个扩展有一个名字和一个可选的值。你可以单独设置每个扩展,或者一次性设置多个扩展。Query的下列方法用于设置厂商扩展特性:

void setExtensions(Map extensions) void addExtension(String key,Object value)

  SQL直接访问

  如果JDO2.0的查询功能不能满足需要,并且以下条件都满足:

  你的应用运行在关系数据库上
  
  你需要的查询有SQL语句可以实现

  你知道从你的类模型到数据库的映射细节

  你就可以创建一个SQL查询,方法是调用PersistentManger的方法:

Query newQuery(String language,Object query)
  
  每一个参数需要设置为“javax.jdo.query.SQL”,而query是一个具体的SQL语句。如果你的查询需要返回类的实例,则这个SQL语句必须返回该类的相应主键字段。使用直接的SQL时,JDOQL提供的函数将不能被使用,否则将会扔出异常JDOUserException,比如,你不能对该Query设置过滤条件字符串、排序声明或变量声明。使用SQL查询时,参数都是未指定类型的,在SQL语句中以“?”表示,并且按出现的顺序被绑定。

  结束语

  各位读者已经看到,JDO2.0对查询语句增加了很多新的功能和特性,我认为其中的查询结果定义是最大的改进。正如我在文章开头说的,这一部分变化目前来说是JDO2.0中最稳定的部分,不会有大的变化。厂商可以开始提供很多这样的功能,不用考虑专家组还在讨论的JDO2.0其余部分将如何变化。

  在JDO2.0提供标准的对象/关系映射的前提下,这里描述的查询功能和一个用于多层结构的JDO应用的脱钩/挂钩(detach/attach)机制,将使JDO占领更多的市场。对这一点有深切体会的厂商将不遗余力地争取率先推出稳定、完整、高效的JDO2.0产品。JDO将是基于数据库存储和管理的应用开发的首先API,开发人员们将享受面向对象的模型设计和高效的数据存储管理系统。

总结

以上是脚本之家为你收集整理的感受Java数据对象JDO 2.0查询语言的特点(3)全部内容,希望文章能够帮你解决感受Java数据对象JDO 2.0查询语言的特点(3)所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入脚本之家官方QQ群:1065694478