上一个问题描述错误了,现在重新提。
实体类
@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>
这种的
对不起各位,要求有点多,关键是那种的看不懂,也没看到公司有在用这种模式,等以后经验多了,再回来研究那种写法。