1
00:00:00,950 --> 00:00:02,890
好,我们往下走
2
00:00:04,140 --> 00:00:04,650
一样的
3
00:00:04,660 --> 00:00:07,170
这前面也见过了,定义一个对象数组
4
00:00:07,870 --> 00:00:12,820
数组的长度就是字段的数量,4个
5
00:00:12,830 --> 00:00:13,140
6
00:00:14,940 --> 00:00:19,790
然后用reader数据填充,这个一样
7
00:00:21,820 --> 00:00:23,850
这里面reader是一行
8
00:00:24,860 --> 00:00:26,970
就把那个发过来
9
00:00:26,980 --> 00:00:29,130
我们看它当前行就行了
10
00:00:31,720 --> 00:00:32,360
填充
11
00:00:32,880 --> 00:00:35,320
然后就跟前面活动记录
12
00:00:35,330 --> 00:00:38,620
还有行数据入口一样的,取第0列
13
00:00:38,950 --> 00:00:39,690
就是ID了
14
00:00:42,550 --> 00:00:46,330
那么根据ID,下面就是一样的
15
00:00:46,340 --> 00:00:51,260
就判断这个里面有没有
16
00:00:51,270 --> 00:00:58,390
loadedmap这个里面有没有这个ID的对象
17
00:00:58,980 --> 00:01:00,410
有,就返回这个对象
1
00:00:00,370 --> 00:00:02,160
这里面这个检查的目的
2
00:00:02,170 --> 00:00:05,020
就是为了避免loadedmap
3
00:00:05,030 --> 00:00:07,430
这里出现重复项
4
00:00:08,070 --> 00:00:10,990
因为你下面有一个没有
5
00:00:11,000 --> 00:00:12,110
就加进去
6
00:00:15,060 --> 00:00:15,960
一样的
7
00:00:17,680 --> 00:00:20,950
确实没有,因为我们都还没有加载过
8
00:00:21,160 --> 00:00:28,810
这是第一次运行使用标识映射
9
00:00:29,520 --> 00:00:30,070
没有的
10
00:00:31,000 --> 00:00:33,040
那么没有,就要把它映射出来了
11
00:00:33,710 --> 00:00:36,410
reader里面,也是来自数据库的
12
00:00:37,240 --> 00:00:38,620
把它变成一个领域对象
13
00:00:40,310 --> 00:00:48,390
就要用到doload这个,把ID,这里ID
14
00:00:48,400 --> 00:00:52,410
就是上面的主键
15
00:00:52,860 --> 00:00:54,520
然后reader,就是里面数据
16
00:00:57,050 --> 00:00:59,130
把它变成一个领域对象
17
00:01:00,320 --> 00:01:03,280
我们看,怎么做
18
00:01:07,420 --> 00:01:14,000
那么doload是在子类里面实现的
19
00:01:14,090 --> 00:01:15,990
但是它的定义在哪里
20
00:01:16,160 --> 00:01:17,470
定义是在超类里面的
21
00:01:18,560 --> 00:01:21,750
定义在层超类型里面