问题汇总:
异常一:
java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time
解决:
在连接url后加入参数
&serverTimezone=UTC
异常二:
超出了结果集边界
解决:
遍历得到结果集长度后要把结果集归位ie
rs.beforeFirst()
public static String[][] readmysql () throws ClassNotFoundException, SQLException{
String driverName = "com.mysql.cj.jdbc.Driver";
String url1="jdbc:mysql://localhost:3306/数据库名";
String url2="?user=root&password=密码";
String url3="&useUnicode=true&characterEncoding=UTF-8";
String url=url1+url2+url3+"&serverTimezone=UTC";
Class.forName(driverName);
Connection conn=DriverManager.getConnection(url);
Statement stmt =conn.createStatement();
String sql="SELECT `字段` FROM 数据库.表明";
ResultSet rs = stmt.executeQuery(sql);
int lengthtemp = 0;
while(rs.next()) {
lengthtemp++;
}
String array[] = new String[lengthtemp];
int i=0;
rs.beforeFirst();
while(rs.next()) {
array[i] = rs.getString(1);
i++;
}
String result[][] = new String[array.length][];
for(int j=0;j<array.length;j++) {
String[] myArray = array[j].split(";");
result[j]=new String[myArray.length];
for(int k=0;k<myArray.length;k++) {
result[j][k] = myArray[k];
}
}
return result;
}