Play framework连接多数据库很简单。

但是这个很简单耗费了我整整两天的时间来找到这个答案。

还好苍天,我还是找到了。

=============================================================

Play通过Ebean好像可以很方便的链接多数据库,但是我使用的是JPA。

所以关于EBEAN是不是能“很方便的”连接多数据库我尽量不发表言论。

Hibernate连接数据库的方法据说有两种:

1.注解@PersistenceUnit或@PersistenceContext

2.配置JPA.getJPAConfig

完全不知道的可以继续往下看,否则可以跳过这一段。

先说想Play JPA中多数据源的配置吧。

先增加持久化单元:在conf/META-INF的persistence.xml中增加,完后是这样:

org.hibernate.ejb.HibernatePersistence

DefaultDS

org.hibernate.ejb.HibernatePersistence

OracleDS

然后在application.conf中增加数据源,完后如下:

db.default.driver=org.h2.Driver

db.default.url="jdbc:h2:file:E:/work/setup/db/data"

db.default.user=sa

db.default.password=sa

db.default.auth=false

db.default.jndiName=DefaultDS

jpa.default=defaultPersistenceUnit

db.oracle.driver=oracle.jdbc.driver.OracleDriver

db.oracle.url="jdbc:oracle:thin:@10.1.20.65:1521:abc"

db.oracle.user=LOG

db.oracle.password=LOG

db.oracle.jndiName=OracleDS

jpa.oracle=ojdbcPersistenceUnit

接下来就是痛苦的探索如何进行多数据库访问。

在网上搜索“jpa 多数据源”找到的基本都是和SPRING结合的,没想到JPA已经快成为spring的专属了。。。

通过在stackof上提问,得到的答案是刚才提到的两种方法:

但是这两种方法都不能奏效。可以留意我在问题下面的跟注。

尤其后来找到这个

幸运的是终于找到了这个

从问题下面作者的回复看到尽管

jpa.getConfig("sth").em()

不管事,但是可以用

jpa.em("sth")

于是改成这样:

JPA.em("default").createQuery(

大功终于告成 。只要为em()指定连接对象即可

play2框架 jpa mysql_Play!2.1 通过JPA连接多个数据库相关推荐

  1. play2框架 jpa mysql_单元测试 – Playframework 2.2.x Java JPA – 用于单元测试和生产的独立数据库...

    所以我使用了一些混合/匹配方法来加快测试速度 >我使用单独的配置文件进行测试和生产 >我使用两种不同的JPA持久性单元进行产品和测试 >在build.sbt中添加了overrode配 ...

  2. ORM框架之Spring Data JPA(二)spring data jpa方式的基础增删改查

    上一篇主要在介绍hibernate实现jpa规范,如何实现数据增删改查,这一篇将会着重spring data jpa 一.Spring Data JPA 1.1 Spring Data JPA介绍: ...

  3. 【SpringBoot框架篇】11.Spring Data Jpa实战

    文章目录 1.简介 1.1.JPA 1.2.Spring Data Jpa 1.3.Hibernate 1.4.Jpa.Spring Data Jpa.Hibernate三者之间的关系 2.引入依赖 ...

  4. jpa 查询 列表_终极JPA查询和技巧列表–第3部分

    jpa 查询 列表 在阅读第三部分之前,请记住本系列的第一部分和第二部分 JPA:通过查询创建对象 JPA允许我们使用所需的值在查询内创建对象: package com.model;public cl ...

  5. JPA休眠替代方案。 如果JPA或Hibernate对于我的项目而言不够好,该怎么办?

    你好!你好吗? 今天,我们将讨论不建议使用JPA / Hibernate的情况. 在JPA领域之外,我们还有哪些选择? 我们将谈论的是: JPA /休眠问题 解决一些JPA /休眠问题的方法 选择此处 ...

  6. JPA——API介绍、完成JPA的CRUD操作、JPQL完成复杂查询操作

    目录 一.JPA的API介绍 二.抽取JPAUtils工具类 三.JPA完成增删改查操作 四.JPA中的复杂查询(使用JPQL) 五.总结 一.JPA的API介绍 跳转到目录 Persistence对 ...

  7. 【Spring Data JPA自学笔记一】JPA是什么?JPA访问数据库初体验

    文章目录 JPA是什么? JDBC的诞生 JPA的诞生 如何使用JPA? 配置JPA 配置pom.xml 配置persistence.xml 实现POJO类 调用JPA方法 关于EntityManag ...

  8. JPA教程:JPA概述、JPA实体生命周期、JPA实体映射关系、JPA查询语言

    JPA定义了Java ORM及实体操作API的标准.本文摘录了JPA的一些关键信息以备查阅. 如果有hibernate的基础,通过本文也可以快速掌握JPA的基本概念及使用. 1 JPA概述 JPA(J ...

  9. Spring Boot文档阅读笔记-使用Spring Data JPA连接多源数据库(MySQL和Oracle)

    下面这个小项目展示了如何连接2个数据库,一个是Oracle,一个是MySQL. 关键的Maven依赖: <dependency><groupId>org.springframe ...

最新文章

  1. 网页爬虫 python-Python爬虫解析网页的4种方式
  2. python怎样画立体图形-用python来画出高光谱遥感影像的3D立体图
  3. 【数理知识】神仙文章(回忆大学所学)常微分方程
  4. 云计算灾备:灾备通识
  5. hdu 4252(单调栈)
  6. 一个不错的shell 脚本教程 入门级
  7. 干货报告:八大科技领域,280 页,InfoQ《2020 中国技术发展白皮书》开放下载...
  8. loj #2305. 「NOI2017」游戏
  9. BZOJ_1798__Codevs_2216_[AHOI_2009]_行星序列_(线段树)
  10. python-反射基础-hasattr-getattr-setattr
  11. 买断式软件逐渐向订阅式软件发展,是不是资本想一直割韭菜?
  12. Windows下 tuxedo 安装及测试
  13. sudo报错案例-RHEL6
  14. java类的参考文献,太完整了!
  15. PowerPoint2003制作抛物线动画的方法
  16. 产品设计:《设计美学》
  17. PHP MYSQLi 过程式准备好语句
  18. 安全扫描工具 AppScan
  19. 云计算运维工程师是做什么的?需要经常加班吗?
  20. matlab导入示波器multisim,Multisim中示波器的使用方法

热门文章

  1. 公众号菜单添加超链接
  2. Visual Leak Detector (VLD)使用
  3. 国美金融贷款导出整个库的结构的sql(国美金融贷款)
  4. 开发常用网站论坛整理http://www.apkbus.com/android-182423-1-1.html
  5. 树莓派上使用百度网盘
  6. 百度网盘“由于网络原因”第三方登录出错
  7. EdgeX(7)使用usb ttl 链接 RX TX 调试,输出乱码问题解决,没有想到最后居然是没有焊好。可以使用cuteCom或者putty 在linux上进行界面查询日志
  8. 如何通过区块链技术提高数字化音乐的透明度和安全性
  9. 揭秘 Vue.js 九个性能优化技巧
  10. linux ssh密码过期时间,go语言ssh客户端解决密码过期问题