Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Help Connessioni DB

  1. #1

    Help Connessioni DB

    Salve... ho scritto questo metodino che fa 3 diverse query sul db... mi rimangono appese le connessioni in TIME-WAIT... io faccio tutti i close possibili!! perche rimangono??
    grazie

    codice:
      Date data=new Date(System.currentTimeMillis());
    	Connection conn=null;
    	Statement st=null;
         	try {
    	        Class.forName("com.mysql.jdbc.Driver");       
                         String url = "jdbc:mysql://localhost:3306/monitoring_schema"; 
                         conn = DriverManager.getConnection(url,"root","root"); 
                        st = conn.createStatement(); 
                        int Risultato=st.executeUpdate("update  stato_ambienti " + 
                       "set risultato="+risultato+" , data='"+new java.util.Date()  +"' ,tempo='"+Tempo+"' where ambiente ='"+Ambiente+"'And ip='"+Ip+"' And Tipologia_richiesta='"+Tipologia+"' "); 
              st.close();
              conn.close();
              conn = DriverManager.getConnection(url,"root","root"); 
              
              if(Risultato==0)
              { st = conn.createStatement();
            	 st.executeUpdate("INSERT INTO stato_ambienti " + 
                  "VALUES ('"+Componente+"', '"+Ambiente+"','"+Ip+"',"+risultato+",'"+new java.util.Date()+"','"+Tipologia+"','"+Tempo+"')"); 
             st.close();
             conn.close();
             conn = DriverManager.getConnection(url,"root","root"); 
             }
             
               if(!risultato)
               {  st = conn.createStatement();
            	  st.executeUpdate("INSERT INTO errori " + 
                          "VALUES ('"+Ip+"', '"+Ambiente+"','"+Errore+"','"+new java.util.Date()+"','"+Componente+"','"+Tipologia+"')"); 
                  st.close();
                  conn.close();
                  conn = DriverManager.getConnection(url,"root","root"); 
                   }
    		
               /*	} catch (InstantiationException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (IllegalAccessException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (ClassNotFoundException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    	*/	} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (ClassNotFoundException e) {
    		// TODO Auto-generated catch block
    		e.printStackTrace();
    	}	
    		finally
    	{ if(st!=null)
    		try {
    			st.close();
    		} catch (SQLException e1) {
    			// TODO Auto-generated catch block
    			e1.printStackTrace();
    		}
    	  if(conn!=null)
    		try {System.out.println("Chiusura Conn");
    			conn.close();
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	          }

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326

    Moderazione

    Come indicato nel Regolamento interno, quando si posta del codice si devono usare gli appositi tag CODE.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.