老师想问下,就是我不管弄的是oracle数据库配置,还是mysql数据库配置,jpa还是那一套接口方法,它是怎么知道的

来源:9-24 编写测试用例前的准备工作

奶茶三兄弟d

2021-07-08

老师想问下,就是我不管弄的是oracle数据库配置,还是mysql数据库配置,jpa还是那一套接口方法,它是怎么知道的,如何动态取实现的呢,谢谢;

那老师,比如我想实现多个 Repository,然后又jpa的,有es的,有mongo的,只要配置做一下切换,想使用哪个就哪个可以做到嘛,前提是表名称都一样,字段也一样,这种需求就是有的客户想用mongo,有的想用es,有的想用Mysql之类的

写回答

1回答

张勤一

2021-07-09

同学你好:

    其实,你可以注意到,我们在写 JPA 的 ORM 时,写的是接口而不是实现类;所以,JPA 在实现时实际上是动态代理,给你的 jpa 接口生成代理对象;所以,当你定义了 MySQL 驱动,则给你生成 MySQL 相关的查询逻辑;你定义了 Oracle 驱动,就给你生成 Orcale 相关的查询逻辑。

2
3
奶茶三兄弟d
非常感谢!
2021-07-09
共3条回复

Spring Cloud微服务实战 打造企业级优惠券系统

微服务,SpringCloud,SpringBoot面试、毕设、

1210 学习 · 488 问题

查看课程