我是新的持久性,我正在阅读“Pro JPA 2”一书。我读了Java和JDBC包的问题是,休眠和SQL可移植性
- SQL是不可移植的 Java代码和SQL之间
- 紧耦合
JDBC的具有讽刺意味的是,尽管编程接口是 便携式,SQL语言不是。尽管 进行了许多尝试来标准化,但仍然很少编写任何复杂性的SQL,这些复杂性在两个主要数据库平台上将保持不变。即使在方言类似的情况下,每个数据库的表现也会有所不同,具体取决于查询的结构,因此大多数情况下需要特定于供应商的调整。
我的问题是:
- 与SQL便携链接的问题仍是如此关键?
- 据我所知,Hibernate,TopLink和其他框架也必须从其元数据(注释)中创建SQL查询。他们如何安排与SQL可移植性相关的问题?
- Java & JDBC紧耦合意味着开发人员必须编写SQL查询。我理解正确吗?
预先感谢您的答复)