RowMapper 示例 | 通过 Spring JdbcTemplate 提取记录2025年3月17日 | 阅读 3 分钟 与 ResultSetExtractor 类似,我们可以使用 RowMapper 接口,通过 JdbcTemplate 类的 query() 方法从数据库中提取记录。 在执行时,我们需要传递 RowMapper 的实例。 使用 RowMapper 的 query 方法的语法RowMapper 接口RowMapper 接口允许将关系的一行映射到用户定义类的实例。 它在内部迭代 ResultSet 并将其添加到集合中。 因此,我们不需要像 ResultSetExtractor 那样编写大量代码来提取记录。 RowMapper 优于 ResultSetExtractor 的优势RowMapper 节省了大量代码,因为它在内部将 ResultSet 的数据添加到集合中。 RowMapper 接口的方法它只定义了一个方法 mapRow,该方法接受 ResultSet 实例和 int 作为参数列表。 该方法的语法如下所示 RowMapper 接口的示例,用于显示表的所有记录我们假设您已在 Oracle10g 数据库中创建了下表。 Employee.java此类包含 3 个具有构造函数和 setter 和 getter 的属性,以及一个额外的 toString() 方法。 EmployeeDao.java它包含一个属性 jdbcTemplate 和一个方法 getAllEmployeesRowMapper。 applicationContext.xmlDriverManagerDataSource 用于包含有关数据库的信息,例如驱动程序类名、连接 URL、用户名和密码。 在 DriverManagerDataSource 类型的 JdbcTemplate 类的属性中有一个名为 datasource 的属性。 因此,我们需要在 JdbcTemplate 类的 datasource 属性中提供 DriverManagerDataSource 对象的引用。 在这里,我们在 EmployeeDao 类中使用 JdbcTemplate 对象,所以我们通过 setter 方法传递它,但是您也可以使用构造函数。 Test.java此类从 applicationContext.xml 文件获取 bean,并调用 EmployeeDao 类的 getAllEmployeesRowMapper() 方法。 |
我们请求您订阅我们的新闻通讯以获取最新更新。