简体   繁体   English

将本地主机更改为服务器上的主机时,为什么会出错?

[英]Why have error when i change localhost to my host on the server?

import java.sql.*;
import javax.swing.*;
public class Connect {
     Connection con=null;

        public static Connection ConnectDB(){
             try{

          Class.forName("com.mysql.jdbc.Driver");
        Connection con = DriverManager.getConnection("jdbc:mysql://cybersolutionstoreco.ipagemysql.com:3306/java?useUnicode=true&characterEncoding=UTF-8","myuser","mypassword");
         //System.out.println("Connect Success");
          return con;

        }catch(ClassNotFoundException | SQLException e){
            JOptionPane.showMessageDialog(null, e);
            return null;
    }      
}
}

this code can work on my machine if i change url to "localhost:3306/java?useUnicode=true&characterEncoding=UTF-8". 如果我将网址更改为“ localhost:3306 / java?useUnicode = true&characterEncoding = UTF-8”,则此代码可以在我的计算机上工作。 i don't know why it shown error like below. 我不知道为什么它显示如下错误。 please help me. 请帮我。

com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: com.mysql.jdbc.CommunicationsException:由于基础异常导致通信链接失败:

 ** BEGIN NESTED EXCEPTION ** java.net.ConnectException MESSAGE: Connection refused: connect STACKTRACE: java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.connect0(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at java.net.Socket.connect(Socket.java:538) at java.net.Socket.<init>(Socket.java:434) at java.net.Socket.<init>(Socket.java:244) at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:271) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2771) at com.mysql.jdbc.Connection.<init>(Connection.java:1555) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) at java.sql.DriverManager.getConnection(DriverManager.java:664) at java.sql.DriverManager.getConnection(DriverManager.java:247) at myfirstproject.Connect.ConnectDB(Connect.java:29) at myfirstproject.Login.txtpasswordKeyPressed(Login.java:108) at myfirstproject.Login.access$200(Login.java:13) at myfirstproject.Login$3.keyPressed(Login.java:87) at java.awt.Component.processKeyEvent(Component.java:6493) at javax.swing.JComponent.processKeyEvent(JComponent.java:2832) at java.awt.Component.processEvent(Component.java:6312) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4891) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4713) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771) at java.awt.Component.dispatchEventImpl(Component.java:4762) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Window.dispatchEventImpl(Window.java:2750) at java.awt.Component.dispatchEvent(Component.java:4713) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) ** END NESTED EXCEPTION ** Last packet sent to the server was 4 ms ago. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at myfirstproject.Login.txtpasswordKeyPressed(Login.java:109) at myfirstproject.Login.access$200(Login.java:13) at myfirstproject.Login$3.keyPressed(Login.java:87) at java.awt.Component.processKeyEvent(Component.java:6493) at javax.swing.JComponent.processKeyEvent(JComponent.java:2832) at java.awt.Component.processEvent(Component.java:6312) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4891) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4713) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771) at java.awt.Component.dispatchEventImpl(Component.java:4762) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Window.dispatchEventImpl(Window.java:2750) at java.awt.Component.dispatchEvent(Component.java:4713) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) BUILD SUCCESSFUL (total time: 11 seconds) 

There can be multiple solutions regarding your problem: 关于您的问题,可以有多种解决方案:

  1. Is there a running instance of MySQL on your machine? 您的机器上是否有正在运行的MySQL实例?
  2. If there is, is the port you are using correct? 如果有,您使用的端口是否正确?
  3. Have you tried just using localhost:3306 without the parameters? 您是否尝试仅使用不带参数的localhost:3306

If the connection was working before there seems to be a problem regarding your machine and not your code. 如果之前连接正常,则可能是因为您的机器而不是您的代码出现了问题。 The code you have given looks fine to me. 您提供的代码对我来说很好。

Hope it was helpful. 希望对您有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 我已经安装了Apache Tomcat 7,并且在浏览器中转到http:// localhost:8080时,看到以下错误:HTTP状态500 - I have installed Apache Tomcat 7 and when I goto http://localhost:8080 in my browser, I see the following error : HTTP Status 500 为什么在尝试与我的服务器通信时出现此错误? - Why am i getting this error when trying to communicate with my server? 为什么在更改组件时必须在我的JFrame上使用setvisible()? - Why do I have to use setvisible() on my JFrame when I change components? 为什么 Springboot 服务器在本地主机和 heroku 主机上的工作方式不同? - Why is Springboot server works differently in localhost and heroku host? 如果我的客户端程序是Java而不是C#,为什么必须添加服务器SSL证书? - Why do I have to add the server SSL certificate if my client program is in Java and not when it is in C#? 当我重新加载我的 bukkit 服务器时,为什么会收到关于 plugin.yml 的错误? - Why do I get an error referring to the plugin.yml when I reload my bukkit server? 当我尝试调用GWT应用程序时,为什么会在GWT Server中引发此错误? - Why this error will be raised in GWT Server when i am trying to call my GWT application? 更改微调器选择时,为什么我的应用程序崩溃? - Why is my app crashing when I change my spinner selection? 当我通过tomcat启动我的应用程序时,为什么仍然得到“ http:// localhost:8080”? - Why I still get “http://localhost:8080” when I start my app by tomcat? 当我有 2 个 setOnclickListener 时,为什么我的应用程序不断崩溃? - Why does my app keep crashing when I have 2 setOnclickListener?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM