play中配置oracle

play framework , oracle

项目需要用play框架连接oracle,在网上查的,国外的网站上几乎所有都写的是要在conf文件中做如下配置


(用的是play 1.2.4版本)

1
2
3
4
db. default .url= "jdbc:oracle:thin:@10.0.2.1521:1521:play"
db. default .driver=oracle.jdbc.driver.OracleDriver
db. default .user=xdb
db. default .pass=xxxxx

 

但是,连接的过程中发现,这样会一直出现JPA错误。这个问题困扰了我一天时间,甚至担心是局域网连接问题,因为项目需要连接到局域网内部的另外一台机器,ping 通了,所以肯定不是IP问题。
那后面又是什么问题呢,我担心是因为play中没有ojdbc.jar,于是按照网上说的在项目的lib文件夹中放入jar包,play deps的时候不能识别,即使是把jar包放在play的安装目录lib中,依然没有反应。
经过了一天的调试,在晚上的时候我已经有些丧失信心了,于是把所有的db都注销了,这样还是会出现JPA no data sourse错误,这样才发现,原来oracle的配置系统根本没有识别出来,更不会去解析了。

于是,去掉了conf文件中的default,因为之前使用mysql的时候没有使用default,而是直接使用的db。下面是我修改后的配置。
1
2
3
4
5
jpa.dialect=org.hibernate.dialect.Oracle11gDialect
  db.url=jdbc:oracle:thin: @192 .168. 1.149 : 1521 :orcl
  db.driver=oracle.jdbc.driver.OracleDriver
  db.user=xdb
  db.pass=xxxxx

这次连接成功

刷新页面,终于出现了一个新的错误,要知道在一直面对JPA错误了以后,发现系统终于能解析到这几行代码,这算是一个进步了。错误原因是因为上面的Oracle11gDialect。


虽然我用的数据库是oracle11g,但是错误结果表示找不到11,那就是系统只有低版本的库了,我修改成10以后,出现以下结果


这次出现的错误是我application代码中的问题了。好了,暂时可以认为数据库连接通了。

我的 配置oracle11g的最终正确的conf配置方法

1
2
3
4
5
jpa.dialect=org.hibernate.dialect.Oracle10gDialect
db.url=jdbc:oracle:thin: @192 .168. 1.149 : 1521 :orcl
db.driver=oracle.jdbc.driver.OracleDriver
db.user=xdb
db.pass=xxxxx

其他的需要注意的就是oracle的数据对应问题了。

你可能感兴趣的:(play中配置oracle)