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. Linux主机WordPress伪静态设置方法
  2. iar stm32_STM32延时函数的四种方法
  3. LeetCode(905)——按奇偶排序数组(JavaScript)
  4. 转:So Easy!让开发人员更轻松的工具和资源
  5. 流行的移动端UI框架
  6. activiti会签以及动态设置办理人员
  7. python--craps赌博游戏
  8. 模拟位置 定位 钉钉打卡 运动轨迹 MD
  9. [原创]火箭发动机设计---民科版
  10. 视频教程-大数据与数据仓库入门到精通-Hadoop
  11. IOS微信端touchstart事件失效处理
  12. Ubuntu卸载历程,包含重启进入grub解决方案
  13. 点击轮播图片,链接跳转错误
  14. 这些操作技巧能够让你的公众号迅速增粉
  15. 【Matlab学习笔记】报错——检查对函数‘Link’的调用中是否缺失参数或参数数据类型不正确。
  16. nextcloud——搭建自己的云盘
  17. Convolutional Neural Network based Multiple-Rate Compressive Sensing for Massive MIMO CSI Feedback:
  18. 【渝粤题库】陕西师范大学202901小学生心理辅导作业(高起专 、专升本)
  19. 仍然不足够--读后感
  20. [bzoj1143][CTSC2008]祭祀river——DAG上最长反链,Dilworth定理,最大二分图匹配,Floyd

热门文章

  1. 计算机出现假桌面怎么解决办法,apphangxprocb1,小编告诉你apphangxprocb1导致桌面假死解决方法...
  2. 李宏毅机器学习课程学习笔记(1)——机器学习基本概念
  3. java-php-python-科大学生党员之家设计计算机毕业设计
  4. SQLServer数据类型(一)
  5. C#上位机与单片机的完美结合(内附有用户登录,注册,截图,温度采集,历史数据展示,左边菜单右边内容展示的主界面)
  6. 【Python处理EXCEL】轻办公实用篇1:通过模糊匹配算法对两个excel表格的内容进行匹配归类
  7. LLDB(一):入门指南
  8. 2018年CMA考试难度大不大?
  9. 孩子数学成绩不好怎么办_孩子数学基础差,数学成绩不好怎么办?
  10. 【职场成长】一篇文章,讲清复盘!