Bella novità di Java 7

Published by Alessandro Musacchio on ottobre 2nd, 2011 - in Java

Oggi vi presento una bella (a mio vedere) novità introdotta da Java7, si tratta del “try with resources”, ovvero come dimenticarsi di rilasciare le risorse come ad esempio la connessione al db :)

Vediamo in dettaglio di cosa parlo..

Come avreste scritto un programmino per fare una query a db con java6??

Pressocchè in questo modo credo:

public void queryJavaSei() {
    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    try {
        conn = DriverManager.getConnection(blablabla);
        stmt = conn.createStatement();
        rs = stmt.executeQuery(blablabla);
        while (rs.next()) {
            rs.getblablabla;
        }
    } catch (SQLException e) {
        log.blablabla;
    } finally {
        if (rs != null) {
            try {
               rs.close();
            } catch (SQLException e) {
                log.blablabla;
            }
        }
        if (stmt != null) {
            try {
                stmt.close();
            } catch (SQLException e) {
                log.blablabla;
            }
        }
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {
                log.blablabla;
            }
       }
    }
}

Bello lungo e complicato rispetto alla versione java7 qui di seguito:

public void queryJavaSette() {
    try(Connection conn = DriverManager.getConnection(blablabla);
    Statement stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery(blablabla)) {
        while (rs.next()) {
            rs.getblablabla;
        }
    } catch (SQLException e) {
        log.blablabla;
    }
}

Così facendo si pone fine ad un’errore umano che crea molti grattacapi in produzione/esercizio dove le connessioni non chiuse possono portare al collasso del server.

Se ti è stato utile il mio articolo, spendi un secondo del tuo tempo e dammi un +1, Google ed io ne saremmo felici :) Grazie mille :)
Tags:

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

*


*

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

© 2010-2012 AlessandroMusacchio.it

Create your own free site