JdbcTemplate 与 entity 映射
2015-09-11 18:03
375 查看
jdbcTemplate.queryForObject(sql, params, new UserVote()); // 一个对象 jdbcTemplate.query(sql, new Object[] { id }, new UserVote()); // 一个list
这个地方的 UserVote需要实现implements RowMapper<UserVote> 进而实现方法public UserVote mapRow(ResultSet rs, int rowNum) throws SQLException
在里面进行手动映射。
/** * * JdbcTemplate 映射方法 */ @Override public UserVote mapRow(ResultSet rs, int rowNum) throws SQLException { UserVote userVote = new UserVote(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); String strDate = rs.getString("create_time"); Date date = null; try { date = sdf.parse(strDate); } catch (ParseException e) { e.printStackTrace(); } userVote.setCreateTime(date); // 可以直接写成rs.getDate() userVote.setId(rs.getString("id")); return userVote; // 并不能直接return this.会导致一直返回同一个对象 }
注意,实现 RowMapper 是可以返回一个对象,和一个list的,而在mapRow 方法中,只需要反回一个对象即可
2016年1月27日 17:59:05
可以不用实现RowMapper,使用
BeanPropertyRowMapper.newInstance(A.class)即可。
另外,jdbcTemplate可以做数据库列名到Java驼峰式的转换,例如:s_name 可以自动转到 sName。
相关文章推荐
- C#高级泛型集合中的where
- iOS沙盒(sandbox)
- 选择
- MFC双缓冲
- 个人看法---如何做一个视频聊天室?
- js 获取昨天、今天、明天的时间
- 【C#】解决进行反序列化时出错:。InnerException 消息是“反序列化对象 属于类型 System.String 时出现错误。读取 XML 数据时,超出最大字符串内容长度配额 (8192)。
- 【来日复制粘贴】捕捉字符串里面的日期的公式
- asp返回json串:string类型严格使用双引号包含
- 获取第三方登录(相关信息 新浪微博&微信&QQ)&&登录和分享接口功能
- hdu 1111 Secret Code
- POJ_2112_Optimal Milking(最大流+二分)
- Pregel: A System for Large-Scale Graph Processing(译)
- 递归
- unix cheatsheet
- CString 和 LPCTSTR 之间的转换 及 LPSTR、LPWSTR、LPCSTR、LPCWSTR、LPTSTR、LPCTSTR的区分与转化
- ARC编译器特性
- jetty配置错误上传图片出错问题
- IOS硬件信息采集汇总
- spark取得lzo压缩文件报错 java.lang.ClassNotFoundException: Class com.hadoop.compression.lzo.LzoCodec