00:01
来接下来啊,我们当这个查询的字段的名字和咱们这个表面的这个属性名不一致的时候的这个解决方案啊,好,我现在让他来个不一致。嗯,Student里边这个内容我改一改啊。那比如说我来个名字叫腹内嘛,全名行吗?人的姓名全名行吗?我就字段改一下,改一下字段的名字,你看现在叫什么呢?同学们说ID,什么full name age,全名全称的意思,行吧,啊,我就是变了个名字而已,OK吧。好,如果是这种情况,我们应该。怎么办?来下一个查询啊。十几了,咱们这回是十。
01:02
15了是吧。好,15啊,咱们还是要这个测试啊,Result type啊,当这个啊数据库表字段名称和啊表面类属性名称不一致时的处理啊。Student deal,咱们来一个15啊,咱们还是查询这个所有的记录啊,但是这回不一样啊,字段名不一样了,好,来一个。Student。好放循环咱们粘一个啊。来个失误。这回是什么?
02:04
Student student对吧?SELECT15啊啊,咱们来result type正常啊,咱们来反一个这个student OK吧,好,Select,咱们还是来一个什么呢星from TV student,这可以吧。行,我们来看一看啊。找一个。这个我们预期的效果是不是一样的。完全一致,为什么?这这跟我们预期的结果一样啊,这个name肯定是没有这个值啊,对不对,也就是说啊,你这个星代表的是谁呢?你这个星代表的是不是ID,这这回不是name了,So name和什么age是这样吗?当你查询出来这个D值是不是根据我student的这个属性名塞到这个ID属性当中啊?
03:11
啊,你查询出来age搜索student这个对不对,但是你查询出来这个full name到student这个属性里边找是不是找不到啊,因为student里边叫什么呢。哎,人家叫name,所以说啊,这个值啊,它插入不进去啊,最终我们得到的这个结果啊,它是一个空OK吧,好,所以啊,我们现在需要对它进行一个特殊的处理啊,我们第一种处理方式很简单啊,啊是以起别名的形式来处理。ID name age,咱们主要处理的是不是这个name啊,对不对,你查询的这个字段叫name,但是你查询的结果是不是得封装到我name属性里去啊。给他起个别名as什么,那不就得了吗?很简单吧,哎。
04:04
走一个。好使吧,嗯,好使,没有任何问题,OK吧,好,这是咱们第一种方式啊,以起别名的方式,OK吧,好,方式一啊,咱们来个七。别名好。好,接下来咱们来一个16啊。嗯,这回啊,咱们来第二种方式啊,第二种方式我们要使用一种手段啊,使用什么呢。Map这种形式啊,咱们来一个select。16。好,我们现在啊,先学一个标签啊,叫做什么呢?Map。
05:01
Map,这个map大家注意啊,它是干嘛用的呢?它是用来做我们数据库。表字段和类属性名一一对应关系来使用的标签,OK吧,好,那么我们现在啊,来一个ID啊,ID是什么呢?是咱们这个result map标签,对的。唯一标识OK吧,对的,唯一标识。好。将来在。啊,使用的该result map标签的时候啊好使用谁呢?ID来找到这组标签OK吧。标签。好,那接下来咱们这个tap啊。
06:02
Tap表示的是啊,我们要这个啊,指定一个这个啊,类型好,要与什么呢?数据库表啊一一。对应啊好建立起什么呢,建立。起这个啊,表字段和类属性的名字一一匹配的关系啊,好,所以说这个ID我随便起个名,比如说我就叫一个s to map,这个是我随便起的名,行吧,Tap,咱们是一个student,我要配这个student类,OK吧。好,里边咱们来一个。啊,这个ID啊,里边我们来一个property column。
07:00
再来。我先写上啊,一会儿再解析这个东西啊,Column。来了。好。这个ID标签啊。好是用来配置什么呢,组建的这个啊对应关系的。或者说是叫这个映射关系,OK吧,好。Result标签。好是用来。配置啊,普通字段。及这个啊属性对应关系啊,就这么说,普通字段这个啊对应。那么对于我们student这张表来讲的话。
08:00
我们。嗯,TBL这个。Student表啊,它的这个啊表结构是一个ID2个什么呢?普通字段能理解吧,所以啊,我们需要一个ID标签两个。标签OK吧,好,其中咱们这个property这个属性啊。表示要配置的是什么呢?配置的是类中的属性名是啥意思?好配置的是什么呢?表中的字段名好,这样啊就能够建立起什么呢?类属性和表字段啊一一对应的关系了,好,那么我们现在这个ID大家想一想啊。
09:19
找到student类,咱们这个属性是不是叫ID啊,表字段叫什么,不是也叫ID啊,对吧?好,那这回呢,咱们这个property啊,Property是不是叫name啊,但是表示字段叫什么?好,那下面这个result age是不是都叫age,我们就为了这一个什么呢?啊,建立起了这么一个关系,起了一个map这个啊,一映射的这个标签,OK吧,好这回啊,我们再来最新的这个C奈16啊,我们再来看一下啊。16、好,这回大家注意啊,可不是result type了,我们第一次用到什么呢?Map OK,引谁呢?
10:12
我要找这个标签,对通过谁找,是不是通过ID找啊STU。Map OK吧,我仍然做的是一个select from表,T student OK吧,好,我们先来试试看啊。这回好使吧,哎,16啊,它是好使了,好,它执行的这个原理是这样的啊,大家注意啊,这个星其实我们查询出来的是一个ID full name以及age,是这样吗?好,我们现在返回result map s map,那大家注意看啊,咱们是不是要找他呀,好,也就是说咱们由这个student,这个doin类型来接收ID name和age,这个没问题吧,好,由他来接收,但是我我是要接收你,但是我这个这种接收啊,它是有原则的对不对,我是有原则的对不对,我怎么接收呢?你给我返回的这个ID字段的这个值啊,给我返到我属性的哪里。
11:16
ID理你这个字段的这个查询出来这个full name给我返回到哪里呢?哎,Name里边age返回到age里很简单吧,OK啊,这两种形式啊,咱们以后实际项目开发中啊,这个都会用到OK吧,而且呢,呃,我们也会接触到什么呢,接触到诶,你会发现你这个类中的这个属性名和我这个表中的字段名会出现大量不一致的情况,有可能会出现。OK吧,但是啊,在开发中啊,尽量还是保持什么呢?那属性名和字段名一对应保持一致,开发起来会很容易,OK吧,但是有一些这个企业,他这个公司文化啊是这样的啊,那比如说咱们这个。
12:02
比如说student这个类啊,它叫这个ID叫name,叫age,是这样吧,它这个表啊,TBL是不是咱们习惯于为表加一个前缀啊,有一些企业啊,他习惯于为每一个字段都加这种前缀,人叫什么呢?T,看到没?T BL name t BL什么,你明明知道这个ID就是这个ID,这个name就是这个name,但是它这个名字它就是不一样,那这种时候如果出现了大量的啊,大家注意啊,出现了大量的这啊这个命名不一致,你是不是起别名就比较麻烦了,咱们使用什么呢?咱们说使用这个result map,建立起一映射的关系以后,返回result map,说一劳永逸啊对不对,OK啊,有可能会出现这种情况,OK吧,行,这个就是。
我来说两句