Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Connection problem

[es] :: Java :: Connection problem

[ Pregleda: 3403 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ZeRo8
Wien

Član broj: 168
Poruke: 235
*.13.14.vie.surfer.at.



Profil

icon Connection problem02.04.2006. u 23:18 - pre 218 meseci
Pozdrav.

Aplikacija u napisana u swingu ima meni u kome stoje Connect i Disconnect. Pored toga imam u meniju i Show Table Users. Kad klikenem na Show Table Users on mi izbaci tabelu s korisnicima koje pokupi iz baze. Kad onda idem na Disconnect, pa opet na Connect i probam ponovo da pozovem Show Table Users on mi jevlja SQL exception "Connection is closed". Ovo su metode:

Code:

public static void connect() {
        
        if(conn==null) {
            
            try {
                //login data 
                String userName = "sa";
                String password = "";
                
                //driver loading
                Class.forName("org.hsqldb.jdbcDriver");
                
                //url specification
                String url = "jdbc:hsqldb:/home/ivan/MyBookstore/MyBookstore";

                //getting connection
                conn = DriverManager.getConnection(url, userName, password);
                
                //setting Connection state
                connState = true;
                System.out.println("Database connection OPENED");
                if(conn.isClosed()) {System.out.println("CLOSSSSEEEES"); }
              
            } catch (Exception e)
                {        
                System.out.println("Cannot connect to database server --> " + e);
                }
        
        }
        else {
            System.out.println("Allredy Connected");
        }
    }
    
    //DISCONNECT Method
    public static void disconnect() {
            System.out.println("Database Connection CLOSED");
            try {
                stmt = conn.createStatement();
                stmt.execute("SHUTDOWN");
                stmt.close();
                conn.close();
                stmt=null;
                conn =null;
                connState=false;
            } catch(SQLException e) {
                connState=false;
                stmt=null;
                conn =null;
                System.out.println("Disconnecting ERROR:\t" + e);
            }    
        }
    
 
Odgovor na temu

vlada.d
Beograd

Član broj: 90865
Poruke: 1
194.106.187.*



Profil

icon Re: Connection problem08.04.2006. u 09:40 - pre 218 meseci
Koliko vidim na brzaka na pogresnom mestu si deklarisao Statement varijablu (stmt = conn.createStatement(),u "DISCONNECT Method", umesto u "connect()"), i fali ti njene inicijalizacij.

Probaj isravku u "connect()" :

...
//getting connection

conn = DriverManager.getConnection(url, userName, password);
stmt = conn.createStatement();
...

, a iz "DISCONNECT Method" izbaci

stmt = conn.createStatement();


Valjda ce pomoci...

Poz...




 
Odgovor na temu

_owl_

Član broj: 318
Poruke: 1043
*.vdial.verat.net.



+3 Profil

icon Re: Connection problem08.04.2006. u 21:37 - pre 218 meseci
Ma da sigurno je tu problem. Nego jesi li ti cuo da u objektno orijentisanom principu klase treba da predstavljaju strukture podataka sa definisanim metodama za operacije nad tim podacime.

@ZeRo8
Procitaj malo Java JDBC dokumentaciju, mozda pronadjes metodu Connection.close() koja sluzi za zatvaranje konekcije sa bazom. Bas me zanima odakle ti ideja da izdavanjem komande SHUTDOWN zatvaras konekciju sa bazom (bar sto se JDBC drajvera tice). Pre ce biti da tako gasis celu bazu.
Owl
 
Odgovor na temu

anon315

Član broj: 315
Poruke: 1657
*.adsl.sezampro.yu.



+13 Profil

icon Re: Connection problem08.04.2006. u 22:13 - pre 218 meseci
To je primer za hsqldb :D
 
Odgovor na temu

logotet
Beograd

Član broj: 49849
Poruke: 42
..taman-bg.customer.sbb.co.yu.

Sajt: www.logotet.com


Profil

icon Re: Connection problem09.04.2006. u 12:55 - pre 218 meseci
Ne vidim ti kod za opciju Show Table Users, ali mi mirise da prilikom ponovnog poziva ne prosledjujes novu instancu konekcije, vec staru koja je zatvorena.
 
Odgovor na temu

ZeRo8
Wien

Član broj: 168
Poruke: 235
*.13.14.vie.surfer.at.



Profil

icon Re: Connection problem09.04.2006. u 14:01 - pre 218 meseci
@_owl_

SHUTDOWN gasi konekciju s bazom, kod HSQLDB (pisan u javi, mislim da je jedino po tome poznat).

Hvala u svakom slucaju, ali problem sam resio ubrzo nakon postavljenog posta. U sustini ne mora se kreirati uvek konekcija da bi se kreirao statement. Tako da sam resio to tako da imam Klasu MyConnection u kojoj se kreira konekcija koja ce biti vracena metodom. Imam pored toga i klasu MySQLQueries koja pokuplja tu konekciju i izvrsava upite. Posle svakog zavrsenog upita zatvara statement i kad je potrebno otvara novi.
 
Odgovor na temu

[es] :: Java :: Connection problem

[ Pregleda: 3403 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.