无法在linux ubuntu上使用Eclipse java IDE连接到MySQL,但使用的代码在windows上运行良好
我当时正在用Eclipse Neon(和window builder)在java上做一个小项目(主要是为了好玩),在这个项目中,我必须连接到MySQL并检索某些信息。在windows中,它工作得很好,我能够连接,获取信息,等等。但后来我切换到Linux Ubuntu 16.04,它就是无法连接到MySQL。我已经建立了连接器的路径等等。我不知道发生了什么,也不知道如何修复它,因为我对java编程(或一般编程)非常陌生,也没有读过任何关于它的书。下面我将留下一些代码(至少是我认为重要的代码)
编辑:
import java.awt.EventQueue;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
public class Test extends JFrame {
Connection Con;
Statement Sent;
private JPanel contentPane;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Test frame = new Test();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/BDConductores?" + "user=root&password=PanXo_666");
Statement st = con.createStatement();
ResultSet result = st.executeQuery("select * from Proyectos");
while (result.next()) {
}
} catch (ClassNotFoundException e) {
System.out.println("Driver not found");
} catch (SQLException e) {
e.printStackTrace();
}
}
public Test() {
PrepararBaseDatos();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
}
void PrepararBaseDatos() {
try {
String controlador = "com.mysql.jdbc.Driver";
Class.forName(controlador).newInstance();
String servidor = "jdbc:mysql://localhost/BDConductores/";
String usuarioDB = "root";
String passwordDB = "PanXo_666";
Con = DriverManager.getConnection(servidor, usuarioDB, passwordDB);
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Error al cargar controlador");
}
try {
Sent = Con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Error al cargar controlador");
}
}
}
没有错误消息(除了代码中的错误消息),它不会加载控制器,我不知道会发生什么:c
# 1 楼答案
最后我终于明白了问题所在。。。我写错了服务器名。 不是这样的:
是这样的:
所以现在我的程序可以毫无问题地连接到我的数据库