jdk21如何在mapper中使用List<Map<String, Object>>
时间: 2024-12-02 11:18:25 浏览: 16
在Java 21版本的MyBatis(Mapper)中,如果你需要从数据库查询返回一个List,其中每个元素是一个Map类型的键值对(key-value pair),你可以通过编写如下的SQL语句,并结合`@Select`注解来实现。假设你想查询某个表中的数据并映射到这种结构:
```java
// Mapper接口中的方法
@Select("SELECT * FROM your_table")
List<Map<String, Object>> getAllData();
// 或者,如果你需要传入条件
@Select("SELECT * FROM your_table WHERE condition = #{condition}")
List<Map<String, Object>> getDataByCondition(String condition);
```
在上述代码中,`@Select`是MyBatis提供的注解,用于标记从数据库查询数据的方法。然后,当你在服务层(Service)调用这个Mapper方法时,可以传递参数并处理返回的List。
当你在服务层获取到结果后,通常会遍历这个List,像操作普通的Java Map一样,例如:
```java
for (Map<String, Object> map : mapper.getAllData()) {
String key1 = map.get("key1");
// ...其他操作
}
```
阅读全文