Java Blog

SimpleJdbcTemplate aus Spring 2.0

Das org.springframework.jdbc.core.JdbcTemplate compiliert unter Java 1.4 und nutzt keine Eigenschaften von Java 5 wie Generics, Autoboxing und Varags.
Seit Spring 2.0 gibt es mit org.springframework.jdbc.core.simple.SimpleJdbcTemplate eine neue Klasse mit eine überschaubaren Anzahl Methoden für Java 5.
– Es ist eine Java 5-Fassade vor dem JdbcTemplate.
Der Konstruktor von SimpleJdbcTemplate nimmt wie JdbcTemplate eine DataSource an.

Methoden vom SimpleJdbcTemplate

int queryForInt(String sql, Object… args)
long queryForLong(String sql, Object… args)
Erfragt ein int/long über einen SQL-String und Argumenten.
List<Map<String,Object>> queryForList(String sql, Object… args)
Map<String,Object> queryForMap(String sql, Object… args)
Führt die SQL-Anfrage mit optionalen Argumenten aus.
<T> T queryForObject(String sql, ParameterizedRowMapper<T> rm, Object… args)
Die SQL-Anfrage liefert ein Ergebnis, das der Mapper auf ein Objekt überträgt.
<T> T queryForObject(String sql, Class<T> requiredType, Object… args)
Führt eine SQL-Anfrage aus und überträgt die Eigenschaften auf ein Objekt.
<T> List<T> query(String sql, ParameterizedRowMapper<T> rm, Object… args)
Der ParameterizedRowMapper überträgt Ergebnisse auf Objekte.
int update(String sql, Object… args)
Führt ein SQL-Update mit optionalen Argumenten durch.


SimpleJdbcTemplate und JdbcTemplate

Neben dem Konstruktor SimpleJdbcTemplate(DataSource) gibt es einen zweiten:
– SimpleJdbcTemplate( JdbcOperations classicJdbcTemplate )
Als Übergabe ist ein Objekt vom Typ JdbcOperations nötig; JdbcTemplate implementiert diese Schnittstelle.
Soll vom SimpleJdbcTemplate auf das unterliegende JdbcTemplate zurückgegriffen werden liefert das die Methode:
JdbcOperations getJdbcOperations()

,object>,object>

,object>,object>

SimpleJdbcDaoSupport

Die DAO-Klassen von Spring erlauben Zugriff auf die Template-Objekte.

Während JdbcDaoSupport ein JdbcTemplate liefert, gibt SimpleJdbcDaoSupport ein SimpleJdbcTemplate.

SimpleJdbcDaoSupport ist eine Unterklasse von JdbcDaoSupport:

org.springframework.jdbc.core.support.JdbcDaoSupport
extended by org.springframework.jdbc.core.simple.SimpleJdbcDaoSupport