大侠们,问题如上所述,出现的错误如下:
Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.Util.getInstance(Util.java:381)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:984)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2270)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:723)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
at sun.reflect.GeneratedConstructorAccessor4.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at ArrApri.ConnectSQL.execute(ConnectSQL.java:26)
at discretization.CreateNewTable.createNewTable(CreateNewTable.java:51)
at discretization.CreateNewTable.main(CreateNewTable.java:12)
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The driver was unable to create a connection due to an inability to establish the client portion of a socket.This is usually caused by a limit on the number of sockets imposed by the operating system. This limit is usually configurable. For Unix-based platforms, see the manual page for the 'ulimit' command. Kernel or system reconfiguration may also be required.For Windows-based platforms, see Microsoft Knowledge Base Article 196271 (Q196271).
at sun.reflect.GeneratedConstructorAccessor8.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:335)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2194)
... 13 more
Caused by: java.net.BindException: Address already in use: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:525)
at java.net.Socket.connect(Socket.java:475)
at java.net.Socket.<init>(Socket.java:372)
at java.net.Socket.<init>(Socket.java:215)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284)我的代码是:
类ConnectSQL:
public class ConnectSQL { private Statement stmt,stmt1;
private String sUsr="root";
private String sPwd="123456";
private Connection cn,cn1;
private ResultSet rs=null;

public boolean execute(String str) throws Exception{
Class.forName( "org.gjt.mm.mysql.Driver" ); 
cn1 = DriverManager.getConnection( "jdbc:mysql://127.0.0.1:3306/apriori?autoReconnect=true", sUsr, sPwd ); 
stmt1 = cn1.createStatement();
boolean bl = stmt1.execute(str);
return bl;
}
}ConnectSQL cs1 = new ConnectSQL();

int b1,b2,b3,b4,b5,b7;
String classCol;
String str1,str2,str3,str4,str5,str7;
String itemStr;
int index = 1;
while(rs.next()){
b1 = rs.getInt(2);
b2 = rs.getInt(3);
b3 = rs.getInt(4);
b4 = rs.getInt(5);
b5 = rs.getInt(6);
b7 = rs.getInt(7);
classCol = rs.getString(8);
str1 = sgenRelevantStr(b1,interval[0],1);
str2 = sgenRelevantStr(b2,interval[1],2);
str3 = sgenRelevantStr(b3,interval[2],3);
str4 = sgenRelevantStr(b4,interval[3],4);
str5 = sgenRelevantStr(b5,interval[4],5);
str7 = sgenRelevantStr(b7,interval[5],7);
classCol = sgenRelevantStr(classCol);
itemStr = str1+","+str2+","+str3+","+str4+","+str5+","+str7+","+classCol;

sqlStr = "insert into shengwu_new(items) values ('"+itemStr+"');";

cs1.execute(sqlStr);