むし 2023-06-02 13:24 采纳率: 71.4%
浏览 37

SQL结果集封装对象中有个map问题

上一个问题描述错误了,现在重新提。
实体类


@Data
public class Student {
    private String classroom;
    private Map<String, String> info;
}
 

数据库中的数据结构

id    classroom   name     address
1          一班       张三       江苏无锡
2          一班       李四       江苏南通
3          二班       王五       北京
4           二班      赵六       上海

从数据库中查出来后展现出来的结构

Map<String, String> map1 = new HashMap<>();
        map1.put("张三", "江苏无锡");
        map1.put("李四", "江苏南通");

        Map<String, String> map2 = new HashMap<>();
        map2.put("王五", "北京");
        map2.put("赵六", "上海");

        Student student1 = new Student("一班", map1);
        Student student2 = new Student("二班", map2);

        List<Student> list = new ArrayList<>();
        list.add(student1);
        list.add(student2);

        System.out.println("list = " + list);


list = [Student(classroom=一班, info={李四=江苏南通, 张三=江苏无锡}), Student(classroom=二班, info={王五=北京, 赵六=上海})]

问:
如果不通过Service层循环遍历结果集实现该功能,最好不要使用

jdbcTemplate.query( "select * from student",  new StudentResultSetHandler())

这种硬编码方式,而是

<select id="find" resultType="com.example.handler.domain.Student">
        SELECT classroom, name, address FROM student
    </select>

这种的

对不起各位,要求有点多,关键是那种的看不懂,也没看到公司有在用这种模式,等以后经验多了,再回来研究那种写法。

  • 写回答

3条回答 默认 最新

  • 洛忆城 2023-06-02 14:51
    关注

    img


    看一下这样是不是能实现你想要的结果

    评论

报告相同问题?

问题事件

  • 创建了问题 6月2日

悬赏问题

  • ¥15 带序列特征的多输出预测模型
  • ¥15 VB.NET读取电脑主板序列号
  • ¥15 Python 如何安装 distutils模块
  • ¥15 关于#网络#的问题:网络是从楼上引一根网线下来,接了2台傻瓜交换机,也更换了ip还是不行
  • ¥15 资源泄露软件闪退怎么解决?
  • ¥15 CCF-CSP 2023 第三题 解压缩(50%)
  • ¥30 comfyui openpose报错
  • ¥20 Wpf Datarid单元格闪烁效果的实现
  • ¥15 图像分割、图像边缘提取
  • ¥15 sqlserver执行存储过程报错