Я хочу связать данные mysql с простым jtextfield. Таким образом, я написал код как:Ошибка драйвера JDBC для подключения mysql
public class SimpleForm extends JFrame implements ActionListener {
private static final long serialVersionUID = 1L;
Connection connection = null;
Statement s = null;
ResultSet rs;
String tableName = "mytable";
JTextField jtf1, jtf2;
JButton jb;
String selTable;
public SimpleForm() {
initComponents();
DoConnect();
}
public void DoConnect() {
try {
connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/myschema", "root", "root");
s = connection.createStatement();
DatabaseMetaData dbm = connection.getMetaData();
String[] types = { "TABLE" };
rs = dbm.getTables(null, null, "%", types);
selTable = "SELECT * FROM " + tableName;
} catch (SQLException e) {
System.out.println("Oops! Error occured..");
e.printStackTrace();
} finally {
try {
s.close();
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
private void initComponents() {
JPanel jp = new JPanel(new FlowLayout());
JLabel jl1 = new JLabel("ID");
jtf1 = new JTextField();
jtf1.addActionListener(this);
JLabel jl2 = new JLabel("Name");
jtf2 = new JTextField();
jtf2.addActionListener(this);
jb = new JButton("Next");
jb.addActionListener(this);
jp.add(jl1);
jp.add(jtf1);
jp.add(jl2);
jp.add(jtf2);
jp.add(jb);
add(jp);
}
public void actionPerformed(ActionEvent e) {
try {
s.execute(selTable);
rs = s.getResultSet();
if ((rs != null) && (rs.next())) {
rs.next();
jtf1.setText(rs.getString(1));
jtf2.setText(rs.getString(2));
}
} catch (SQLException e1) {
e1.printStackTrace();
}
}
public static void main(String[] args) {
new SimpleForm().setVisible(true);
}
}
Я делаю это в базе данных eclipse индиго и mysql. Я импортировал файл jar драйвера в папку lib. все еще я получил следующую ошибку.
Oops! Error occured..
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/myschema
at java.sql.DriverManager.getConnection(DriverManager.java:604)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at main.SimpleForm.DoConnect(SimpleForm.java:55)
at main.SimpleForm.<init>(SimpleForm.java:46)
at main.SimpleForm.main(SimpleForm.java:135)
Exception in thread "main" java.lang.NullPointerException
at main.SimpleForm.DoConnect(SimpleForm.java:74)
at main.SimpleForm.<init>(SimpleForm.java:46)
at main.SimpleForm.main(SimpleForm.java:135)
Так что, пожалуйста, помогите мне решить это. У меня действительно не проблема.
Возможно, это: http://stackoverflow.com/questions/5556664/how-to-fix-no-suitable-driver-found-for-jdbcmysql-localhost-dbname-error-w или это: http://stackoverflow.com/questions/12590314/no-suitable-driver-found-for-jdbcmysql-localhost – DessDess
Проверьте документы API: вам нужно указать DriverManager, который является драйвером. Попробуйте использовать DriverManager.getDrivers(), чтобы проверить, что вы загружаете. –
вы должны установить путь к классам для mysql-connector.jar в eclipse, используя путь сборки, а также вы должны поместить mysql-коннектор в папку lib в WEB-INF Directory вашего веб-приложения (если вы разрабатываете любое веб-приложение) , – Hackerman