1. Fügen Sie eine Methode hinzu, um die Karte in userInfo in UserInfo.java umzuwandeln
public static userInfo toobject (MAP MAP) {userInfo userInfo = new userInfo (); userInfo.setID ((Integer) map.get (id)); userInfo.setuname ((String) map.get (uname); userInfo.setunumber (inteuger) map.get (nicht); teger); map.get (unumber)); userInfo.seturegisterTime ((Datum) map.get (uregister_time)); userInfo;} öffentliche statische Liste toobject (Liste> Listen) {list userInfos = new ArrayList (); für (MAP: LISTS) {userInfo = userInfo = userInfo = userInfo = userInfo = nulfo = nulfo = nulfo.toobo. {userInfos.add (userInfo);}} return userInfos;}DAO -Schicht -Implementierung:
öffentliche Liste findAll () {String sql = select * von user_info; List <map <String, Objekt >> lists = jdbctemplate.queryForList (SQ); userInfo.toobject (Listen) zurückgeben; }Zusammenfassung: Diese Methode kann implementiert werden, aber die Geschwindigkeit ist sehr langsam.
2. Verwenden Sie jdbcTemplate.query(sql,RowMapper) , um zu implementieren:
DAO -Schicht -Implementierung
jdbctemplate.Query (SQL, neuer RowMapper <Benerfo> () {@Override public userInfo maprow (Ergebnisset rs, int rownum) löst SQLEXception aus {userInfo userInfo = new userInfo (); userInfo.setuname (rs.getString ("uname"); userInfo.Setunumber (rs.getInt ("unumber"));Zusammenfassung: Es kann nicht in anderen Abfragemethoden wiederverwendet werden.
3.. Verwenden Sie RowMapper, um die Schnittstellenmethode zu implementieren und die Maprow -Methode zu überschreiben:
public class userInfo implementiert rowMapper, serialisierbar {@Override public userInfo maprow (resultSet rs, int rownum) löscht SQLEXception {userInfo userInfo = new userInfo (); userInfo.setid (rs.getInt (id)); userInfo.setuname (rs.getString (uname)); userInfo.setunumber (rs.getint (unumber)); userInfo.setunumber (rs.getint (unumber)); userInfo.seturegisterTime (rs.getDate (uregister_time)); userInfo zurückgeben; }}DAO -Schicht -Implementierung:
public userInfo getbyId (Integer id) {String sql = select * von user_info wobei id =?; UserInfo userInfo = jdbctemplate.QueryForObject (SQL, New UserInfo (), neues Objekt [] {id}); userInfo zurückgeben; } publiclist findAll () {String sql = select * von user_info; Listen userInfos = jdbctemplate.Query (SQL, New UserInfo ()); userInfos zurückgeben; }4. Verwenden Sie die DAO -Schicht
jdbctemplate.Query (sql.toString (), New BeanPropertyRowMapper <BENE INFO> (QSFYMXB.CLASS));
Frühling bietet eine bequeme RowMapper-Implementierung ---- BeanPropertyRowMapper
Es kann automatisch eine Datenreihe auf die Instanz der angegebenen Klasse zuordnen. Es instanziiert zuerst die Klasse und ordnet sie dann dem Attribut ab, indem es den Namen entspricht.
Zum Beispiel: Der Attributname (Vehicleno) übereinstimmt mit der Spalte gleicher Name oder derselben Namensspalte (Vehicle_NO) mit einer unterstrichenen Spalte (Vehicle_NO). Wenn eine Eigenschaft nicht übereinstimmt, ist der Wert der Eigenschaft null
Das obige ist der gesamte Inhalt dieses Artikels über die Verwendung von JDBCTEMPLATE -Abfrage zur Rückgabe eines benutzerdefinierten Objektsammelscode -Beispiels. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf andere verwandte Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!