首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Hibernate实现数据库无关性

问使用Hibernate实现数据库无关性
EN

Stack Overflow用户
提问于 2013-06-18 19:17:12
回答 2查看 266关注 0票数 1

我在Java应用程序中使用Hibernate for ORM。我想编写自定义查询组合多个表,并使用像sum(salary)这样的DB函数。我还希望支持多个数据库,而无需为每个数据库一次又一次地编写SQL。目前遵循的方法是让存储过程特定于每个DB (Oracle、MySQL等),无论我们想要支持哪一个,我们都会更改应用程序中的配置文件。我正在寻找的是一个非常通用的解决方案,这样我就不需要为每个新功能编写存储过程或SQL。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-18 19:26:02

如果你真的想让它保持可移植性,你需要用HQL来做所有的事情。

您没有理由不能在HQL中执行多表连接和聚合函数,您只需将自己限制在它支持的那些表连接和聚合函数即可。

一旦你开始做特定于数据库供应商的事情,根据定义,你不再是独立于数据库的。

票数 1
EN

Stack Overflow用户

发布于 2013-06-18 19:20:19

HIbernate标准是一个完美的套件。

Hibernate提供了操作对象和RDBMS表中可用数据的替代方法。其中一种方法是Criteria API,它允许您以编程方式构建一个criteria查询对象,您可以在其中应用过滤规则和逻辑条件。

http://www.tutorialspoint.com/hibernate/hibernate_criteria_queries.htm

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17167520

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档