1. Добавьте метод для преобразования карты в userInfo в UserInfo.java
Public Static UserInfo TOOBject (MAP MAP) {userInfo userInfo = new userInfo (); userInfo.setId ((integer) map.get (id)); userInfo.setUnam map.get (unumber)); userinfo.seturegistertime ((date) map.get (uregister_time)); return userInfo;} public Static Sist Toobject (List> Lists) {List userInfos = new ArrayList (); для (карта: списки) {userInfo userInfo = userInfo {userInfos.add (userInfo);}} return userInfos;}Реализация слоя DAO:
public List findall () {string sql = select * from user_info; Список <map <string, object >> lists = jdbctemplate.queryforlist (sq); return userinfo.tobject (списки); }Резюме: этот метод может быть реализован, но скорость очень медленная.
2. Используйте jdbcTemplate.query(sql,RowMapper) , чтобы реализовать:
Реализация DAO Layer
jdbctemplate.query (sql, new rowmapper <userInfo> () {@Override public userInfo mapRow (ResultSet rs, int rownum) throws sqlexception {userInfo userInfo = new userInfo (); userInfo.setuname (rs.getString ("uname"); userinfo.setunumber (rs.getint ("unmeman");Резюме: его нельзя использовать повторно в других методах запроса.
3. Используйте Rowmapper, чтобы реализовать метод интерфейса и переопределить метод MapRow:
Общедоступный класс userInfo реализует Rowmapper, Serializable {@Override public user userInfo mapRow (ResultSet RS, Int Rownum) Throws SQLexception {userInfo userInfo = new userInfo (); userinfo.setid (rs.getint (id)); userinfo.setuname (rs.getString (uname)); userInfo.setunumber (rs.getint (unmember)); userInfo.setunumber (rs.getint (unmember)); userinfo.seturegistertime (rs.getdate (uregister_time)); вернуть userInfo; }}Реализация слоя DAO:
public userinfo getbyid (integer id) {string sql = select * from user_info где id =?; UserInfo userInfo = jdbctemplate.queryforobject (sql, new userinfo (), new Object [] {id}); вернуть userInfo; } public list findall () {string sql = select * from user_info; Список userinfos = jdbctemplate.query (sql, new userinfo ()); вернуть userInfos; }4. Используйте слой DAO
jdbctemplate.query (sql.toString (), new BeanPropertyRowMapper <userInfo> (qsfymxb.class));
Spring обеспечивает удобную реализацию Rowmapper ---- BeanPropertyRowMapper
Он может автоматически отображать строку данных в экземпляр указанного класса. Сначала он создает класс, а затем отображает его с атрибутом, сопоставляя имя.
Например: имя атрибута (ehrickleno) соответствует тому же столбцу с именем или столбцом с тем же именем (effice_no) с подчеркнутым столбцом (ather_no). Если свойство не совпадает, значение свойства равна нулю
Выше приведено все содержание этой статьи об использовании запроса JDBCTemplate для возврата примера кода коллекции объектов. Я надеюсь, что это будет полезно для всех. Заинтересованные друзья могут продолжать ссылаться на другие связанные темы на этом сайте. Если есть какие -либо недостатки, пожалуйста, оставьте сообщение, чтобы указать это. Спасибо, друзья, за вашу поддержку на этом сайте!