komponenty i podlaczenie do b. danych

0

Hejka

Mam malusi problem Mam do stworzenia aplikacje łączącą się z bazą danych za pomocą MySql. Zabawę w Javie rozpoczęlam dopiero niedawno. Mam do stworzenia aplikację-interfejs która po podaniu odpowiedniego hasla i loginu bedzie automatycznie łączyć sie z baża danych na serwerze szkoly w ktorej będą nanoszone zmiany ktore się wprowadzi przez owy interfejs. Część programu który zrobilam do tej pory wygląda następująco :

import java.awt.;
import javax.swing.
;

public class Cwiczenie
{
public static void main(String[] argum)
{
JFrame ramka = new JFrame("Cwiczenie v1.0");
ramka.setSize(200, 200);
ramka.setVisible(true);

int wynik; 

JTextField poleNazwy = new JTextField( );

JPasswordField poleHasla = new JPasswordField( );

String komunikat = "Proszę wpisać nazwę użytkownika i hasło.";
wynik = JOptionPane.showOptionDialog(ramka, new Object[] 
{ komunikat, poleNazwy, poleHasla },"Logowanie", JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, null, null);

}
}

Nie wiem jak zrobic by pobieral wprowadzony login, haslo i sprawdzal ich poprawność. Jeśli by haslo lub login byly niepoprawne to po wcisnieciu Ok by mialo podawac komunikat o zlych danych i czyscilo wczesniej wprowadzone dane w przeciwnym wypadku interfejs osiagnal by polaczenie z baza danych i otworzyl nastepne okienko. Jeli wcisnieto by Cancel automatycznie aplikacja ma sie zamykac. No i w tym tkwi mÓj problem :o( Pomuzcie to sprawa zycia i smierci :o(

0
  1. Pobieranie danych: poleNazwy.getText(), analogicznie dla poleHasla
  2. Sprawdzenie poprawności: musisz utworzyć połączenie do bazy danych. Jeśli wyrzuci Ci wyjątek, to wprowadzone dane są niepoprawne.
  3. Polecema stronę z wieloma przykładami w języku angielskim: http://javaalmanac.com
0

dzieki za podpowiedz Jeszcze taka rzecz jak juz pobierze te dane to chcialam za pomoca if -else stworzyc warunek ze jak login i haslo sa poprawne to wywolaj nastepna JFrame a jak nie to czysc okienkai jeszcze raz tylko jeszcze bedzie trzeba petle dodac. Chcialam cos takiego zrobic :
if ((poleNazwy == " login")&&( poleHasla == "haslo"))
{ JFrame term = new JFrame("terminarz");}
else
{ JOptionPane.showMessageDialog(ramka, " zle wprowadzone dane", "komunikat apokaliptyczny", JOptionPane.WARNING_MESSAGE);}
Nie wiem czy ten zapis jest poprawny czy trzeba go inaczej napisac. Troche kombinowalam z tym ale nie moge wywolac by sie pojawila druga ramka Nie wiem czy cos zle robie czy co :o(

0

dzieki za podpowiedz Jeszcze taka rzecz jak juz pobierze te dane to chcialam za pomoca if -else stworzyc warunek ze jak login i haslo sa poprawne to wywolaj nastepna JFrame a jak nie to czysc okienkai jeszcze raz tylko jeszcze bedzie trzeba petle dodac. Chcialam cos takiego zrobic :
if ((poleNazwy == " login")&&( poleHasla == "haslo"))
{ JFrame term = new JFrame("terminarz");}
else
{ JOptionPane.showMessageDialog(ramka, " zle wprowadzone dane", "komunikat apokaliptyczny", JOptionPane.WARNING_MESSAGE);}
Nie wiem czy ten zapis jest poprawny czy trzeba go inaczej napisac. Troche kombinowalam z tym ale nie moge wywolac by sie pojawila druga ramka Nie wiem czy cos zle robie czy co :o(

0

Źle mnie zrozumiałeś, ale po kolei.

  1. Najprościej abyś formularz logowania zrobił na oknie dialogowym (JDialog) w trybie modalnym - setModal(true)
  2. Pod przyciskiem "Zaloguj" podpinasz funkcję, która będzie łączyła się z bazą
  3. W funkcji w bloku try wywołujesz połączenie:
polaczenie = DriverManager.getConnection(adres_bazy, poleNazwy.getText(), poleHasla.getText()); 
poleNazwy.setText(""); //kasowanie pól
poleHasla.setText("");
setVisible(false); //zamknięcie okna
  1. Jeśli wyłapiesz wyjątek SQLException wyświetlasz komunikat o błędzie logowania
0

a co jesli haslo i login beda w ciele programu? bo to chodzi o to ze najpierw trzeba podac haslo i login by z interfejsu nie kozystaki niepozadane osoby, a potem jak jest haslo i login poprawnie to wywoluje sie okienko i to ono pobiera dane z bazy - nie loin i haslo tylko to drugie. I nie moge wlasnie tego ruszyc. Kombinuje na maksa i nic :o( Czy to moze pod dany przycisk trzeba podpiac ramke (np. w NetBean dodajac do button komponent JFrame?).

1 użytkowników online, w tym zalogowanych: 0, gości: 1