Spring中JdbcTemplate使用RowMapper
1 package com.cxl.demo.dao; 2 3 import java.sql.ResultSet; 4 import java.sql.SQLException; 5 import java.util.List; 6 import org.springframework.jdbc.core.JdbcTemplate; 7 import org.springframework.jdbc.core.RowMapper; 8 import com.cxl.demo.entity.User; 9 public class UserDaoImpl { 10 private JdbcTemplate jdbcTemplate; 11 12 public void setJdbcTemplate(JdbcTemplate jdbcTemplate) { 13 this.jdbcTemplate = jdbcTemplate; 14 } 15 16 public List<User> getUserByName(String username) { 17 String sql = "select * from t_user where username = ?"; 18 Object[] params = new Object[] { username }; 19 List<User> users = null; 20 /** 21 * 使用接口实现类 22 */ 23 users = jdbcTemplate.query(sql, params, new UserRowMapper()); 24 /** 25 * 使用匿名内部类 26 * 如果UserRowMapper类只使用一次,单独为其创建一个类多余,可以使用匿名类 27 * 省略了书写一个实现类 28 */ 29 users = jdbcTemplate.query(sql, params, 30 new RowMapper<User>() { 31 @Override 32 public User mapRow(ResultSet rs, int rowNum) throws SQLException { 33 User user = new User(); 34 user.setId(rs.getInt("id")); 35 user.setUsername(rs.getString("username")); 36 user.setPassword(rs.getString("password")); 37 return user; 38 } 39 }); 40 return (users != null && users.size() > 0) ? users : null; 41 } 42 43 public class UserRowMapper implements RowMapper<User> { 44 45 @Override 46 public User mapRow(ResultSet rs, int rowNum) throws SQLException { 47 User user = new User(); 48 user.setId(rs.getInt("id")); 49 user.setUsername(rs.getString("username")); 50 user.setPassword(rs.getString("password")); 51 return user; 52 } 53 54 } 55 }
hello world!!!
分类:
Spring
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix