00:01
呃,我们再回到我们刚才写的这个代码哈,其实这个我们刚才写的这些东西里边呢,比较麻烦,比较费脑子的哈,就主要还是我们这个奔驰update的这个方法,我们下边呢,咱们给这些代码呢,去加一下注释啊,我们再去梳理一下这个过程,呃,在这首先呢,我们是先去创建一个string build对象,用于去拼接我们的SQ语句的各个组成部分,然后呢,下一步呢,我们就直接呢拼了我们佛标签,这也没有什么好说的哈,然后呢,下一步哈,这是为了我们后边去做准备,我们需要去拿到一个nt class,获取实体类对应的class对象。
01:01
然后呢,下一步这是获取我们实体类啊,在数据库中对应的表明,然后这一步呢,是我们生成update子句,拼接update update子句啊,然后这拼接标签这些很明显的我们就不写了哈,这一步呢,是获取所有字段的这个信息。对,然后去遍历啊,各个字段,遍历各个字段呢,我们首先呢,其实做的一个操作呢,就是去判断。当前字段啊,是否为主键,如果是的话呢,就把主键的字段名啊和它的这个字段值给它缓存起来,这个里边呢,它有一个。
02:10
呃,Get column holder这样一个方法哈,它返回的形式呢,诶返回的格式是是这样的,我们把这个它这个其实是它官方给的注释哈,我们把它放在这儿,大家好参考啊,不然的话,我们不知道这个方法返回的值是什么样子,我们现在的这个record呢,就相当于是他这个nt name这个地方啊,咱们就在这就写呃,Record,然后呢,下边这个在else这个分支里面啊,我们就是使用非主键字段去拼接我们的set。哎,然后呢,组装呃,Set的结束标签,然后到这哈,哎,使用前面缓存的我们的主键名,主键值我们去拼接。
03:20
Where,诶,然后是for的解束标签,然后呢,把拼好的so,拼好的我们这个字符串的返回,诶,将拼接好的。字符串返回啊,这是我们梳理一下这个我们这个方法主要的代码的这个功能。大家可以参照着去写一写啊,当然了,我们在这儿哈,嗯,不知道大家会不会有这样一个疑问哈,你写这么大这么一大堆的东西,比我直接写一个for标签这个麻烦多了,你何苦呢?我直接写这个for标签,我嗯就实现了功能了,这样多好。
04:04
啊,那这个事我们跟大家去这么说哈,你我们写这个方法呢,你如果我们把这一套都写好了以后,你将来不管是什么样的设计类过来,我们都能够去做这个批量的更新,但是你如果是按照这个去写的话,你不同的设计类呢,你还得分别去实现啊,这个时候呢,其实你像这样的所标线呢,你反而要写很多次啊,所以这个我们封装这个方法呢,它还是有它的意义的。
我来说两句