java - Hibernate 集成访谈

标签 java hibernate jakarta-ee jdbc

上周五我去一家 IT 咨询公司面试。

面试官问了我的项目以及我参与了什么。

突然他抛出了一个关于hibernate的问题。他的问题如下

“如果我有一个使用 Java EE 环境在 MVC 架构中开发的项目,但使用 JDBC 进行数据库交互,我将如何将 Hibernate 集成到其中。我不想打扰现有代码,所有的以前的 JDBC 代码应该完好无损。”

我告诉他,我们在现有代码中添加 hibernate 的所有功能,因为它只需要配置文件,实体就是这样。旧的 JDBC 代码本身可能使用数据源来获取连接,可以使用 JNDI 查找相同的数据源以在 Hibernate 中构建 session 工厂,这没什么大不了的。

但是面试官对我的回答并不满意,他需要更多的解释。 我没能给他留下深刻的印象。

您能否建议上述问题的可能答案是什么? 或者至少给我一个提示,以便我能够找到答案。

最佳答案

我想他想要的答案如下。

典型的应用程序设计需要层分离。有以下经典层:Web层、业务逻辑和DB。有一个名为 DAO(数据访问对象)的薄层,用 java 编写,在业务逻辑和 DB 之间扮演“中间人”的角色。听起来这一层是使用普通 JDBC 实现的。

因此,用基于 Hibernate 的层替换这一层并且仅替换这一层是没有问题的。

现在您可以添加有关如何配置 Hibernate 并将其与应用程序的其余部分集成的更多详细信息。

关于java - Hibernate 集成访谈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10370131/

相关文章:

java - while 循环后的下一行未执行

java - 在 Java 中使用 substring()

java - 为什么 Java 编译器拒绝编译它?

jakarta-ee - Apache Tomcat 发送重定向

java - JSF 将 <h :outputLabel> text w. r.t 包装到下一行中它自己的起始索引

java - 关于 JDBC 驱动程序

java - 从 MongoDB 获取 Java 集合

java - OneToMany 关系中的复合唯一约束

java - 使用 JPA 一对一映射以及 mysql 复合主键插入数据

java - dropwizard hibernate 使用服务器内部的资源