spring JdbcTemplate 查詢,使用BeanPropertyRowMapper

來源:互聯網
上載者:User

標籤:beanpropertyrowmappe   spring   query   

應用:

使用Spring的JdbcTemplate查詢資料庫,擷取List結果清單,資料庫表欄位和實體類自動對應,可以使用BeanPropertyRowMapper

注意:

自動綁定,需要列名稱和Java實體類名字一致,如:屬性名稱 “userName” 可以匹配資料庫中的欄欄位 "USERNAME" 或 “user_name”。這樣,我們就不需要一個個手動綁定了,大大提高了開發效率。


org.springframework.jdbc.core.JdbcTemplate  的 query 方法:
org.springframework.jdbc.core.JdbcTemplate.query(String sql, Object[] args, RowMapper<UserEntity> rowMapper) throws DataAccessException
public class BeanPropertyRowMapper<T> implements RowMapper<T>    註:BeanPropertyRowMapper 實現了 RowMapper 介面

轉載請註明:http://blog.csdn.net/limenghua9112/article/details/45096437
查詢代碼:

@Overridepublic List<UserEntity> findUser(UserEntity user) {logger.info("查詢語句:" + SEL_BY_USERNAME_PWD);/* * Query given SQL to create a prepared statement from SQL and a list of * arguments to bind to the query, mapping each row to a Java object via * a RowMapper. *//* * In Spring 2.5, comes with a handy RowMapper implementation(實現) called * ‘BeanPropertyRowMapper’, which can maps a row’s column value to a * property by matching their names. Just make sure both the property * and column has the same name, e.g property ‘custId’ will match to * column name ‘CUSTID’ or with underscores(底線) ‘CUST_ID’. */List<UserEntity> userList = jdbcTemplate.query(SEL_BY_USERNAME_PWD,new Object[] { user.getUserName(), user.getPwd() },new BeanPropertyRowMapper<UserEntity>(UserEntity.class));return userList;}

SQL:

private static final String SEL_BY_USERNAME_PWD = "SELECT * FROM " + ConstantList.T_SHUJU_ADMIN_USER + " AS sp WHERE sp.username = ? and sp.pwd = ?";




spring JdbcTemplate 查詢,使用BeanPropertyRowMapper

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.