Spring JdbcTemplate Wie werden Parameter für Ausnahmen protokolliert?

Mit Spring's JdbcTemplate habe ich versucht, eine saubere Methode zu finden, um Ausnahmen in der DAO-Ebene zu protokollieren, aber ich kann es nicht herausfinden. Ich möchte die verwendete SQL-Anweisung protokollierenun Die Parameter

Zum Beispiel, wo addStoreSql eine parametrisierte Anweisung ist

public int addStore(Store store) {
    return jdbcTemplate.update(addStoreSql, store.getId(), store.getName());        
}

Ich mache so etwas wie ..

public int addStore(Store store) {
    try{
        return jdbcTemplate.update(addStoreSql, store.getId(), store.getName());        
    } catch (DataAccessException ex) {
        logger.error("exception on deleting store - " + store.toString(), ex);
        throw ex;
    }
}

Meine Frage, gibt es eine Möglichkeit, dies über viele Dao-Methoden hinweg sauberer zu schreiben? Möglicherweise auf Logger-Ebene oder in einer Frühlingsbibliothek? Oder ist das der sauberste Weg (oder ist der obige Code sogar schlecht)?

Ich habe mehrere Methoden, die im Grunde dasselbe tun, ein Objekt aufnehmen, die Felder an eine Abfrage übergeben und das Ergebnis zurückgeben.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage