【发布时间】:2014-10-30 08:13:31
【问题描述】:
在我的应用程序中,我使用休眠来连接数据库并创建会话。这是我的 hibernate.cfg.xml 文件。还行吧。它工作正常。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/country</property>
<property name="connection.username">root</property>
<property name="connection.password">password</property>
</session-factory>
</hibernate-configuration>
但是当我尝试使用db.property file 使用此hibernate.cfg.xml 读取数据库配置属性时,它显示异常,这是我的另一个hibernate.cfg.xml 文件
<util:properties id="db" location="classpath:db.properties" />
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="driverClassName" value="#{db['driverClassName']}"></property>
<property name="url" value="#{db['url']}"></property>
<property name="username" value="#{db['username']}"></property>
<property name="password" value="#{db['password']}"></property>
</session-factory>
</hibernate-configuration>
这是错误
org.dom4j.DocumentException: Error on line 8 of document : The prefix "util" for element "util:properties" is not bound. Nested exception: The prefix "util" for element "util:properties" is not bound.
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2155)
这是我的属性文件,名为db.properties
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/country
username=root
password=password
有什么问题吗? 如何正确地做到这一点
【问题讨论】:
-
如果你使用的是spring,那么你可以参考这个链接,stackoverflow.com/questions/17939339/…
-
我读过,但我只需要在休眠状态下进行,而不是使用弹簧。因为我希望我的休眠应用程序从属性文件中获取数据库配置属性。
-
@Killer 确实 this 帮助你