Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java TreeAno的tomcat 9 context.xml中的JDBC URL存在问题_Java_Url_Jdbc_War_Tomcat9 - Fatal编程技术网

Java TreeAno的tomcat 9 context.xml中的JDBC URL存在问题

Java TreeAno的tomcat 9 context.xml中的JDBC URL存在问题,java,url,jdbc,war,tomcat9,Java,Url,Jdbc,War,Tomcat9,我在服务器上安装了一个新的Tomcat9(Ubuntu 18.04)。我试图设置treeanno()并部署github repos中给出的web应用程序归档(war)。 我使用tomcat manager应用程序来部署war文件,并按照以下描述配置tomcat以使用相应的数据库资源:。 根据简单的描述,这应该添加到tomcat安装的context.xml中: <Resource name="treeanno/jdbc" auth="Container" type="javax.sql.Da

我在服务器上安装了一个新的Tomcat9(Ubuntu 18.04)。我试图设置treeanno()并部署github repos中给出的web应用程序归档(war)。 我使用tomcat manager应用程序来部署war文件,并按照以下描述配置tomcat以使用相应的数据库资源:。 根据简单的描述,这应该添加到tomcat安装的context.xml中:

<Resource name="treeanno/jdbc" auth="Container" type="javax.sql.DataSource"
           maxActive="100" maxIdle="30" maxWait="10000"
           username="USERNAME" password="PASSWORD" driverClassName="com.mysql.jdbc.Driver"
           url="DATABASE URL"/>
但调整端口等不起作用: url=jdbc:mysql://localhost:8080/TreeAnno-1.0.2“/


现在,我需要如何制定url以允许应用程序连接/启动MySQL数据库?

有多种方法可以为Tomcat托管的web应用程序配置JDBC数据连接

Tomcat中的JNDI连接 在您的笔记中,您描述了如何使用添加到Tomcat
context.xml
文件中的Tomcat
Resource
条目。当我使用这种方法时,我还向我的web应用程序的
web.xml
文件中添加了一个条目,该条目引用了
Resource
条目。例如:

<resource-ref>
    <res-ref-name>treeanno/jdbc</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>
java:comp/env
有什么作用

但是首先测试你的URL 在进入上述配置之前,您可能需要独立地确保拥有正确的JDBC连接URL(以及用户和密码)

如果你有错误的URL,或者数据源不可用,那么再多的修补也无济于事

如何测试?各种方法-例如:

<resource-ref>
    <res-ref-name>treeanno/jdbc</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>
使用工具,例如。这将要求URL、用户和密码来连接到MySQL

或者编写一个独立的Java应用程序(带有一个main方法)和一个basic

或者只关注MySQL连接细节的任何其他方式,而不是Tomcat配置

正如@CHN所指出的:如果没有mysql-JDBC-jar文件,这一切都没有意义


正如我所说,这只是完成工作的一种方法,但对我来说,它起到了作用。

有多种方法可以为Tomcat托管的web应用程序配置JDBC数据连接

Tomcat中的JNDI连接 在您的笔记中,您描述了如何使用添加到Tomcat
context.xml
文件中的Tomcat
Resource
条目。当我使用这种方法时,我还向我的web应用程序的
web.xml
文件中添加了一个条目,该条目引用了
Resource
条目。例如:

<resource-ref>
    <res-ref-name>treeanno/jdbc</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>
java:comp/env
有什么作用

但是首先测试你的URL 在进入上述配置之前,您可能需要独立地确保拥有正确的JDBC连接URL(以及用户和密码)

如果你有错误的URL,或者数据源不可用,那么再多的修补也无济于事

如何测试?各种方法-例如:

<resource-ref>
    <res-ref-name>treeanno/jdbc</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>
使用工具,例如。这将要求URL、用户和密码来连接到MySQL

或者编写一个独立的Java应用程序(带有一个main方法)和一个basic

或者只关注MySQL连接细节的任何其他方式,而不是Tomcat配置

正如@CHN所指出的:如果没有mysql-JDBC-jar文件,这一切都没有意义


正如我所说,这只是完成工作的一种方法,但它对我很有效。

首先,您需要安装(如果您熟悉它,也可以使用安装)

在安装过程中,我记得它会要求您为root用户设置密码(这是默认用户名)

假设您将数据库命名为
foo
,则
context.xml
中的
应更新为:



然后下载,并将其放入
$TOMCAT\u ROOT\u文件夹/lib
中。然后重新启动TOMCAT,我相信应用程序将连接到
foo
数据库和。

首先,您需要安装(或者如果熟悉它,请使用安装)

在安装过程中,我记得它会要求您为root用户设置密码(这是默认用户名)

假设您将数据库命名为
foo
,则
context.xml
中的
应更新为:



然后下载,并将其放入
$TOMCAT\u ROOT\u文件夹/lib
。然后重新启动TOMCAT,我相信应用程序将连接到
foo
数据库和。

你在
/lib
中有mysql驱动程序jar吗?
jdbc:mysql:3306
不是有效的jdbc连接url…无论如何,听起来你都没有你在tomcat本身的CLASP路径上安装了MySQL连接器/J驱动程序。你在
/lib
中有MySQL驱动程序jar吗?
jdbc:MySQL:3306
不是一个有效的jdbc连接url…在任何情况下,听起来好像你在tomcat本身的CLASP路径上没有MySQL连接器/J驱动程序。非常感谢你的帮助,它现在可以工作了!基本上,主要问题是tomcat根文件夹中缺少mysql.jar。之后,修复url修复了问题:)非常感谢您的帮助,它现在可以工作了!基本上,主要问题是tomcat根文件夹中缺少mysql.jar。之后,修复url修复了问题:)