Java 无法连接到Mariadb Xampp数据库

Java 无法连接到Mariadb Xampp数据库,java,tomcat,jdbc,xampp,mariadb,Java,Tomcat,Jdbc,Xampp,Mariadb,我正试图通过eclipse和tomcat连接到本地MariaDB数据库。当我运行程序时,我收到以下消息: java.sql.SQLNonTransientConnectionException: Could not connect to localhost:8080 : unexpected end of stream, read 0 bytes from 4 (socket was closed by server) at org.mariadb.jdbc.internal.util.

我正试图通过eclipse和tomcat连接到本地MariaDB数据库。当我运行程序时,我收到以下消息:

java.sql.SQLNonTransientConnectionException: Could not connect to localhost:8080 : unexpected end of stream, read 0 bytes from 4 (socket was closed by server)
    at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:240)
    at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:171)
    at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:1132)
    at org.mariadb.jdbc.internal.util.Utils.retrieveProxy(Utils.java:561)
    at org.mariadb.jdbc.MariaDbConnection.newConnection(MariaDbConnection.java:175)
    at org.mariadb.jdbc.Driver.connect(Driver.java:92)
这是我正在执行的代码:

public void verbinde() {
        Connection conn = null;
          Statement stmt = null;
          try {
              //STEP 2: Register JDBC driver
              Class.forName("org.mariadb.jdbc.Driver");

              //STEP 3: Open a connection
              System.out.println("Connecting to a selected database...");
              conn = DriverManager.getConnection(
                      "jdbc:mariadb://localhost:8080/test?user=root&password=root");
              System.out.println("Connected database successfully...");

              //STEP 4: Execute a query
              System.out.println("Creating table in given database...");
              stmt = conn.createStatement();

              String sql = "CREATE TABLE REGISTRATION "
                      + "(id INTEGER not NULL, "
                      + " first VARCHAR(255), "
                      + " last VARCHAR(255), "
                      + " age INTEGER, "
                      + " PRIMARY KEY ( id ))";

              stmt.executeUpdate(sql);
              System.out.println("Created table in given database...");
          } catch (SQLException se) {
              //Handle errors for JDBC
              se.printStackTrace();
          } catch (Exception e) {
              //Handle errors for Class.forName
              e.printStackTrace();
          } finally {
              //finally block used to close resources
              try {
                  if (stmt != null) {
                      conn.close();
                  }
              } catch (SQLException se) {
              }// do nothing
              try {
                  if (conn != null) {
                      conn.close();
                  }
              } catch (SQLException se) {
                  se.printStackTrace();
              }//end finally try
          }//end try
          System.out.println("Goodbye!");
      }//end main
    //end JDBCExample

MariaDB的默认端口是3306而不是8080

jdbc:mariadb://localhost:3306/test?user=root&password=root
8080是tomcat运行的端口


顺便说一句:使用try with resources,而不是try-catch-finally块

嘿,还是没有连接。这是phpmyadmin的URL。尝试使用3306,但也没有连接。Tomcat的HTTP/1.1端口应该是什么?