Spring 中的 RowMapper

本文介绍如何在Spring中使用RowMapper接口将数据库查询结果映射为自定义对象。通过实现RowMapper接口中的mapRow方法,可以方便地将查询结果中的每一行数据封装成指定的Java对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


Sping中的RowMapper可以将数据中的每一行数据封装成用户定义的类.

我们在数据库查询中,如果返回的类型是用户自定义的类型(其实我们在数据库查询中大部分返回的都是自定义的类)则需要包装,如果是Java自定义的类型,如:String则不需要.

如果sping与hibernate 相结合了,基本上是用不到,大多数都是在spring单独使用时用到.

可以通过建立内部类实现RowMapper接口,RowMapper中有一个mapRow方法,所以实现RowMapper接口一定要实现mapRow方法,而对自定义类的包装就在mapRow方法中实现.

这里只是一个简单的例子:

[java]  view plain  copy
  1. public class TestDao {  
  2. private JdbcTemplate jt;  
  3. public void setJt(JdbcTemplate jt) {  
  4.    this.jt = jt;  
  5. }  
  6. public List<TNpc> getAll(){  
  7.     String sql = "select * from t_npc";  
  8.    //使用  
  9.    List list = jt.query(sql, new NpcRowMapper());  
  10.    return list;  
  11. }  
  12. /** 
  13. * 定义内部类实现RowMapper接口 
  14. */  
  15. public class NpcRowMapper implements RowMapper{  
  16.       //实现mapRow方法  
  17.      public Object mapRow(ResultSet rs, int num) throws SQLException {  
  18.         //对类进行封装  
  19.       TNpc npc = new TNpc();  
  20.       npc.setId(rs.getLong("id"));  
  21.       npc.setName(rs.getString("name"));  
  22.       return npc;  
  23.    }    
  24.    }  
  25. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值