2012-06-08 301 views
0
x1.instance3650.db.xeround.com-nino_db 
[chatserver.sql.MySqlConnection.rehash()] 
this is con null [.()] 
connection to MySQL server failed 
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: 
Cannot load connection class because of underlying exception: 
'java.lang.NumberFormatException: For input string: "chatserver"'. 
[chatserver.sql.MySqlConnection.connect()] 
Exception in thread "AWT-EventQueue-0" [.()] 
java.lang.NullPointerException [.()] at 
chatserver.sql.MySqlConnection.ensureConnected(MySqlConnection.java:105) [.()] at 
chatserver.sql.MySqlConnection.getServerConfig(MySqlConnection.java:936) [.()] at 
chatserver.objects.ServerConfig.loadConfigFromSql(ServerConfig.java:57) [.()] at 
chatserver.objects.ServerConfig.<init>(ServerConfig.java:49) [.()] at 
chatserver.objects.Server.<init>(Server.java:36) [.()] at 
chatserver.objects.Server.getInstance(Server.java:88) [.()] at 
chatserver.main.ServerMain$1.run(ServerMain.java:24) [.()] at 
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) [.()] at 
java.awt.EventQueue.dispatchEvent(EventQueue.java:597) [.()] at 
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) [.()] 
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) [.()] 
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) [. 
()] at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) [.()] at 
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) [.()] at 
java.awt.EventDispatchThread.run(EventDispatchThread.java:122) [.()] 

这是由下面的代码块抛出..连接到MySQL服务器无法

try { 
    //conn = DriverManager.getConnection ("jdbc:mysql://localhost:chatserver"); 
    // Joshua - change 
    // dbPassword = ""; 
    conn = DriverManager.getConnection("jdbc:mysql://" + dbHost + ":" 
        + dbPort + "/" + dbDatabase + "?" + "user=" + dbUser 
        + "&" 
        + "password=" + dbPassword); 
    lastMySqlActionTime = new Date().getTime(); 
} catch (SQLException e) { 
    System.out.println("this is con "+conn); 
    ServerLog.logError("connection to MySQL server failed "+e); 
    return false; 
} 

我可以通过命令提示符,然后利用数据库访问数据库...它不是抛出错误在驱动程序的任何错误...

PLZ一些人可以帮你me..thank

+0

请您适当格式化你的问题?错误消息正确包装并缩进,代码也一样。 – glglgl

回答

1

从堆栈跟踪和代码段可用看来你dbPortchatserver,wher EAS端口就像3306一个int,因此在解析它作为整数它是失败的,给你NumberFormatException

所以不是

conn = DriverManager.getConnection ("jdbc:mysql://localhost:chatserver") 

尝试用这种

conn = DriverManager.getConnection ("jdbc:mysql://localhost:3306/chatserver") 

完整的连接字符串将类似于如下:

DriverManager.getConnection("jdbc:mysql://localhost:3306/chatserver", 
          "root", "root"); 

在上面,你可以把你的用户名,密码,dbPort ,数据库名称等

这里我假设你想连接到一个名为的ChatServer

+0

感谢ümprabhat我sloved这个问题,但我已经遇到了新的疑难问题运行代码ñ它在我的netbeans运行顺利,但是当我尝试运行它gaves错误 本地主机,myblechat [这个特殊项目的jar文件chatserver.sql.MySqlConnection.rehash()] 与MySQL服务器的连接失败[chatserver.sql.MySqlConnection.connect()] 线程“AWT-EventQueue-0”中的异常java.lang.NullPointerException atchatserver.sql.MySqlConnection。 ensureConnected(MySqlConnection.java:100) chatserver.sql.MySqlConnection.getServerConfig(MySqlConnection.java:931) – nissal

+0

高兴,你可以检查此[链接](http://stackoverflow.com/questions/4498047/export-jar- netbeans)为NetBeans中的Jar Export或可以开始一个新的问题。 – mprabhat

+1

请注明答案正确其中帮你:) – mprabhat

0

模式,我认为这个问题是在

conn = DriverManager.getConnection ("jdbc:mysql://localhost:chatserver"); 

你得到一个NumberFormatException异常,因为端口号应是数字。

0

看看我下面的代码,并尝试实现它作为它在这里....我希望它会顺利运行..一旦你开始得到你想要的查询结果,修改它为你的心脏内容进一步R & D 。

change the password and username在这个方案

import java.sql.Connection; 

import java.sql.DriverManager; 

import java.sql.PreparedStatement; 

import java.sql.ResultSet; 

import java.sql.ResultSetMetaData; 

import java.sql.SQLException; 

import java.sql.Statement; 

import java.util.Vector; 

import javax.swing.JTable; 

import com.my.views.*; 


public class DBDiary { 

    Connection conn; 
    EntryDisplay entryD; 


    public DBDiary(){ 

     this.getConn(); 

    } 

    public Connection getConn(){ 

     try { 
      conn = getConnection(); 

     } catch (SQLException e) { 

      System.out.println("Connection Couldnt be Obtained"); 
     } 
      return conn; 
    } 


    public static Connection getConnection() throws SQLException { 

     String drivers = "com.mysql.jdbc.Driver"; 
     String url = "jdbc:mysql://localhost:3306/test"; 
     String username = "root"; 
     String password = "root"; 

     System.setProperty(drivers,""); 

     return DriverManager.getConnection(url,username,password); 

    } 

    public void createTable() { 

     Statement stat = null; 
     String sql = "create table items(item varchar(30), cost DOUBLE(12,3),day integer,month varchar(15), year integer);"; 
     if (conn != null){ 

      try { 

       stat = conn.createStatement(); 

      } catch (SQLException e) { 

       System.out.println("Connection Couldnt be Obtained"); 
      } 

      if (stat != null){ 

       try { 
        stat.executeUpdate(sql); 
       } catch (SQLException e) { 
        //System.out.println("Table already Exists"); 
       }  
      } 

     } 
    } 


    public void addItems(String item, double cost,int day, String month, int year) { 

     PreparedStatement pstat = null; 

     String sql = "INSERT INTO ITEMS Values(?,?,?,?,?);"; 

     if (conn != null){ 

      try { 

       pstat = conn.prepareStatement(sql); 


      } catch (SQLException e) { 

       System.out.println("Connection Couldnt be Obtained"); 
      } 

     } 

     if (pstat != null) { 

      try { 

       pstat.setString(1, item); 
       pstat.setDouble(2, cost); 
       pstat.setInt(3, day); 
       pstat.setString(4, month); 
       pstat.setInt(5,year); 
       pstat.executeUpdate(); 

      } catch (SQLException e) { 

       e.printStackTrace(); 
       System.out.println("Insertion of the entry was unsuccessful"); 
      } 
     } 


    } 


    public static void main(String[] args) { 

    DBDiary db = new DBDiary(); 
    db.createTable(); 
    db.addItems("Cards", 40.00,29, "Mar", 2012); 


    }