Witam Wszystkich programistów.
Jestem na starcie do świata matrixa.
Proszę Was o wskazówki co zrobiłem źle, lub czego nie zrobiłem.
Ma za zadanie stworzyć projekt, którego dane będą zapisywały się do bazy danych.
W moim przypadku baza danych mysql.
Projekt mój łączy się, zapisuje, ale zapisuje tylko nazwy kolumn.
I tak potem mama
IMIE NAZWISKO KLASA ....
imie nazwisko klasa
imie nazwisko klasa
imie nazwisko klasa
zamiast np
Anna Nowak 7 ...itd
oto mój kawałek kodu, który nie robi tego co chce.
a dodadtkowo wysypuje mi błąd:
at pakietSzkolny.Panel.actionPerformed(OknoDodawaniaUcznia.java:153) <-------------- ????*-patrz niżej
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
Część kodu
class Panel extends JPanel implements ActionListener { //klasa panelu
//inicjujemy pola wpisów i przyciski
JTextField pole1, pole2, pole3, pole4, pole5, pole6;
JButton dodaj;
JButton nowy;
JLabel wiadomosc = new JLabel("");
Statement st; //instrukcja dla SQL
public Panel() {
//setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
//opisy pól
add(new JLabel("Imie ucznia: "));
pole1 = new JTextField(16);
add(pole1);
add(new JLabel("Nazwisko ucznia: "));
pole2 = new JTextField(16);
add(pole2);
add(new JLabel("klasa ucznia: "));
pole3 = new JTextField(16);
add(pole3);
add(new JLabel("nauczyciel: "));
pole4 = new JTextField(16);
add(pole4);
add(new JLabel("przedmiot: "));
pole5 = new JTextField(16);
add(pole5);
add(new JLabel ("ocena: "));
pole6 = new JTextField(16);
add(pole6);
dodaj = new JButton("Dodaj");
dodaj.addActionListener(this);
add(dodaj);
nowy = new JButton("Nowy");
nowy.addActionListener(this);
add(nowy);
add(wiadomosc);
}
public void actionPerformed(ActionEvent ae) {//dodawanie osoby
dodaj();
try {
Connection c=
DriverManager.getConnection("jdbc:mysql://localhost:3306/szkola","root","");
st = c.createStatement();
String s1 = pole1.getText().trim();
String s2 = pole2.getText().trim();
String s3 = pole3.getText().trim();
String s4 = pole4.getText().trim();
String s5 = pole5.getText().trim();
String s6 = pole6.getText().trim();
st.executeUpdate(
//String polecenie =
"INSERT INTO szkola(imie ,nazwisko, klasa, nauczyciel, przedmiot, ocena)");
st.executeUpdate("INSERT INTO szkola'"+ s1+ "','"+ s2+ "','"+ s3+ "','"+ s4+ "','"+ s5+ "','"+ s6+ "' )");
String selectSQL="select * from szkola";
ResultSet rset = st.executeQuery("INSERT INTO `szkola'");//selectSQL
st.close();
}
catch (Exception ek) {
ek.printStackTrace();
wiadomosc.setText("Błąd " + ek.getMessage());
}
wiadomosc.setText("Dane zostały zapisane w bazie.");
validate();
}
public void dodaj(){ //throws InstantiationException, IllegalAccessException, ClassNotFoundException{
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection c=
DriverManager.getConnection("jdbc:mysql://localhost:3306/szkola","root","");
}catch(Exception ek){
ek.printStackTrace();
//} nie
} finally {
closeConnection(); }
}
private void closeConnection() {
// TODO Auto-generated method stub
}
public void nowy() {
nowy();
TextArea czysc = new TextArea();
add(czysc);
pole1.setText("");
pole2.setText("");
pole3.setText("");
pole4.setText("");
pole5.setText("");
pole6.setText("");
try {
st.executeUpdate(null);
//wiadomosc.setText("Wprowadz nowego ucznia.");
st.close();
} catch (Exception ek) {
wiadomosc.setText("Wprowadz nowego ucznia.");
validate();
}
}
}
Proszę zorientowanych o pomoc.
Banita