2012-06-08 94 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); 


    }