b***i 发帖数: 3043 | 1 最近折腾了一段时间,搞清楚了Spring JDBC。现在继续折腾JPA。求高手指点。
OpenShift上的Spring-quickstart架在jboss eap上,使用了h2,这是个内存中的数据库
,我想改为Mysql。Readme说,只要把persistene.xml里面的
java:jboss/datasources/ExampleDS
改成
java:jboss/datasources/MysqlDS
就行了。但是我试了不行,页面为the page was not found。我觉得,至少得把Mysql的
用户名密码什么的写了吧?我使用的是Eclipse,没有安装jboss,所以找不到
standalone.xml,也没有module.xml。相关的有一个文件spring-quickstart-ds.xml,
里面有
http://www.jboss.org/ironjacamar/schema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.org/ironjacamar/schema http://docs.jboss.org/ironjacamar/schema/datasources_1_0.xsd">
到底怎样才能使用Mysql呢? |
d****i 发帖数: 4809 | 2 可以不管persistent.xml,直接用Spring 的bean definition file: beans.xml来定义
你的dataSource吗?这样的话可能会方便很多,毕竟配置很多xml不是一件fun的事情。
【在 b***i 的大作中提到】 : 最近折腾了一段时间,搞清楚了Spring JDBC。现在继续折腾JPA。求高手指点。 : OpenShift上的Spring-quickstart架在jboss eap上,使用了h2,这是个内存中的数据库 : ,我想改为Mysql。Readme说,只要把persistene.xml里面的 : java:jboss/datasources/ExampleDS : 改成 : java:jboss/datasources/MysqlDS : 就行了。但是我试了不行,页面为the page was not found。我觉得,至少得把Mysql的 : 用户名密码什么的写了吧?我使用的是Eclipse,没有安装jboss,所以找不到 : standalone.xml,也没有module.xml。相关的有一个文件spring-quickstart-ds.xml, : 里面有
|
b***i 发帖数: 3043 | 3 我发现这个项目居然没有beans.xml。另外这个项目是用jpa,估计是另一套方案。是不
是存储数据有多种方案,我会Spring JDBC了。那么,hibernate是一个方案吗?jpa是
另一种吗?是不是没有必要都学啊?目前流行的是什么?
【在 d****i 的大作中提到】 : 可以不管persistent.xml,直接用Spring 的bean definition file: beans.xml来定义 : 你的dataSource吗?这样的话可能会方便很多,毕竟配置很多xml不是一件fun的事情。
|
d****i 发帖数: 4809 | 4 我也没搞过那些ORM,hibernate/JPA等等都是ORM,就是把数据库里面的relational
data变成你的Java里面的对象。我直接用Spring JDBC而没用ORM,已经可以满足我的需
求,觉得还不错。那个beans.xml一般是你自己创建的,用来定义Spring bean。比如你
这个要接mysql的话(假设在同一host上),大抵是这样的:
然后其他bean就可以reference这个dataSource bean了。
【在 b***i 的大作中提到】 : 我发现这个项目居然没有beans.xml。另外这个项目是用jpa,估计是另一套方案。是不 : 是存储数据有多种方案,我会Spring JDBC了。那么,hibernate是一个方案吗?jpa是 : 另一种吗?是不是没有必要都学啊?目前流行的是什么?
|
b***i 发帖数: 3043 | 5 最近学Spring这一套学疯了。刚才,版面搜索,我居然输入了spring。
OpenShift官方的人发布了一个自己的app,下载后发现可用。然后重新启动app,就
exception了。
org.hibernate.exception.JDBCConnectionException: could not prepare statement
我发现他的程序里没有任何地方设mysql的用户名和密码。数据库本来就是存到磁盘的
吧?重启了不好用那还叫persistence吗?真不明白这个Openshift为什么不给出一个好
用的例子来。
【在 d****i 的大作中提到】 : 我也没搞过那些ORM,hibernate/JPA等等都是ORM,就是把数据库里面的relational : data变成你的Java里面的对象。我直接用Spring JDBC而没用ORM,已经可以满足我的需 : 求,觉得还不错。那个beans.xml一般是你自己创建的,用来定义Spring bean。比如你 : 这个要接mysql的话(假设在同一host上),大抵是这样的: : : : : :
|
b***i 发帖数: 3043 | 6 居然搞定了,居然就是把字符串改了就行了.改数据库真这么简单啊。那个用户名和密码
用系统变量的形式在git里面的openshift里面standalone.xml中设置了。我一直没找到。
那个印度人的例子,我重启app,出现Exception也有新发现。重启后过了一段时间又好
了。我估计,重启后,是不是数据库的连接没有切断,重新连被拒了。
statement
【在 b***i 的大作中提到】 : 最近学Spring这一套学疯了。刚才,版面搜索,我居然输入了spring。 : OpenShift官方的人发布了一个自己的app,下载后发现可用。然后重新启动app,就 : exception了。 : org.hibernate.exception.JDBCConnectionException: could not prepare statement : 我发现他的程序里没有任何地方设mysql的用户名和密码。数据库本来就是存到磁盘的 : 吧?重启了不好用那还叫persistence吗?真不明白这个Openshift为什么不给出一个好 : 用的例子来。
|