首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >配置Tomcat Webapp应用程序的数据库属性

配置Tomcat Webapp应用程序的数据库属性
EN

Server Fault用户
提问于 2016-01-24 00:51:08
回答 1查看 4.8K关注 0票数 0

我在Tomcat中设置了一个示例应用程序,但在数据库连接的工作中遇到了问题。它是用Spring框架编写的标准WAR包,使用MySQL数据库。

应用程序是来自http://www.cumulogic.com/downloads/sample-applications/的“奶奶通讯录”。

我已经在tomcat/webapps/ (Tomcat7.0.42)下部署了它,MySQL 5.1.73运行在同一台主机上。

  • Mysql名称:grannydb
  • JNDI名称:MySqlGBDS

我无法定位数据库连接设置的位置,因为它没有通常的database.properties文件。对数据库设置的唯一引用在granny.xml中:

代码语言:javascript
复制
<database>
  <engine>MySQL-5.5.27</engine>
  <no-of-nodes>1</no-of-nodes>
  <storage>10</storage>
  <config>
    <master-username>demo</master-username>
    <master-password>demodemo</master-password>
    <port>3306</port>
    <character-set>UTF-8</character-set>
  </config>       <external-host></external-host>
</database>

但是这个文件没有打包在webapp中(它是分开的),而且它没有数据库主机名。

我试着把granny.xml放在WEB-INF/classes/META-INF/spring/下的webapp应用程序中,但是它无法连接到数据库。

当前的行为是webapp正在启动,但catalina.out警告说:

代码语言:javascript
复制
 WARN : org.hibernate.cfg.SettingsFactory - Could not obtain connection
 to query metadata org.apache.tomcat.dbcp.dbcp.SQLNestedException:
 Cannot create JDBC driver of class '' for connect URL 'null'

granny.xml应该放在哪里?

还缺什么?

(是的,我已经在MySQL中创建了数据库和用户。该应用程序没有创建任何表。)

EN

回答 1

Server Fault用户

回答已采纳

发布于 2016-01-25 07:52:37

如果它使用JNDI,则需要在server.xmlcontext.xml中设置数据库连接。

作为管理员,最好在server.xml中设置数据库连接,否则,在每次部署之前,您都会解压缩和打包WAR文件。

打开server.xml.应该有一个名为GlobalNamingResources的节。在这里,您可以添加数据库连接。

代码语言:javascript
复制
<Resource auth="Container" 
          driverClassName="com.mysql.jdbc.Driver" 
          factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
          jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer"  
          validationQuery="/* ping */"
          testOnBorrow="true"
          name="jdbc/MySqlGBDS" 
          username="<username>"
          password="<password>" 
          type="javax.sql.DataSource" 
          url="jdbc:mysql://<ipaddress>/grannydb" /> 

希望这能有所帮助。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/751303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档