00:00
往下来我们来看my be的深入理解参数,那这一块我们要讲的内容是说我们要执行S语句,我们都知道在三语句中。我们看添加的时候,我们这块是不是要有数据啊,这个数据来自于哪里呢?当然是你的程序代码中,我们是在程序中。来组织的这个死丢单的对象,然后把这个对传递到我们的这个麦文件中嘛,那这里边你会看到这是你的代码部分。这是你的这个文件,那这里边他俩之间是不是肯定得某种关系或者某种方式,你才能够把这个死丢单的,你得传到这个文件里去啊。我们现在要研究的是怎么把这些参数传到这个文件中,你知MYBAT可以怎么来用这些数据?就讲这怎么把这个数据从你的代码中传递到你的map文件中。
01:04
通过传参才能让你构建这个。三个语句功能更强更灵活嘛,我们不可能每次都是这么做,它所有吧,我们肯定得写一个外置条件,比方说Y啊和ID等于一的,那这个一怎么能够传进来呢?这讲的就是存参啊,存参是从你的Java代码中把参数存到你的这个map文件的语句之中,就存参过来啊。好,那这块呢,就是重点内容了,这一块呢,我们记记笔记啊。这是第三章第三章第三章我们这块的第一个内容呢,是动态代理,态代理我们要使用的是s get map,参数呢是do接口。接口的这个class目的呢,是获取这个DAO接口的对象,接口的对象啊,这是同在代理,然后第二个点呢,要讲的是纯参啊传入参数。
02:18
传入参数,这个参数呢,是说呢,我们从Java代码中,我们把这些数据传入到。MY的SL文件中,Map文件的CQ语句中这么说。Java代码中把数据传入到map文件的C中,这叫存参。存参首先讲的第一个知识点呢,叫做perter type啊,讲证明内容叫做parameter type。
03:01
来说它第一个小知识点pre type,这个pre type呢,它是写在。啊,他是。写在麦文件中的一个属性,一个属性它是来表示。DAO接口中方法参数的数据类型的什么意思?比如说你这有个接口指证do接口,在这个中定一个方法,这个方法呢是查询吧。嗯,查询一个这么写,它是说我们要select。Still ID这个参数呢,是一个学生的主见。那现在我想知道我们这个。
04:02
ID。它是什么类型的呢?它是in t数据类型的。那我需要通过这个frame来告诉MYBY查询时这个参数ID是一个整形值。那整形值就是这么一个意思,那我们给他实现一下,看看怎么做啊。我们来一个新项目。啊零三呢,复制一份,它是0404呢,我们要研究的是纯参啊,纯参也是M码参数这一部分。零四打开之后,我们把这两个干掉它。Home呢,打开它。把项目名字改一下就行了,改成名次,改这一个就OK了。然后导入。导入是零四。啊,Finish,最后呢,剩下JDKOK。好,把上面这都关掉,在零四中研究我们参数的内容。
05:04
啊,打开程序这SIC下面这块的my resource这啊,他还得去改一下目录。这个目录呢,是一个result route。好,那第一个节课啊,这个都删掉了,都不要了,然后map文件中全都干掉啊,我们写第一个要查询一下,查询一个学生,根据主见来查。啊,学生主件不就一个对象,所以返回的是一个student啊,叫做select student Di ID,参数呢,这个是一个整形,按照要求,那你拷贝方法的名称,打开你的my pro文件这一块,Select ID是方法的名字,That type,你返回的是一个student对象啊,你得告诉你的MY什么呢?Student ID name。
06:05
Email h让ma ID等于等于一个值嘛,对不对,等于不值。那这个值是什么呢?嗯,我先写个站位符吧,先写上一点,这叫ITU,嗯,这叫ID吧,这个语法规则一会跟你说先不着急啊。那么这个ID呢,它就代表是我们的传入进来的这个ID值。那现在我想告诉买be,这个ID是一个整形类型的,这样你的买be就知道更多信息了嘛,那怎么表示这个ID整形类型呢?那我们在这个select标签里边,这有一个叫做me和派。什么类型的整形吗?写权限这个名称加点long.in tIgEr,诶,加点you加in tIgEr吗?不对样加有点long啊,In tIgEr in,哎,这就行了。
07:03
加long中的in t,那么这个in t就表示说我们接口中这个方法的类型是一个整形值,就这么一个意思啊,那现在我们调一下,看看行不行,能不能够经这个查询得到某一个对象呢?打开我们这个测试。打开我们那个测试,然后。这块是c select by ID。但注释我们都不要了啊。方法,这些都不要了,就留这一个。好,这些呢,都不要了,现在查询一个学生调用DAO的写了,把ID传入一个1002吧。查询得到是一个student,好,那么输出。
08:00
好,来执行一下吧。就像我们这个查询操作,那肯定能得到结果呀,没问题。看我们的日志,我们看啊,这块是个问号。然后这个传的是11002002就代替了这个问号,要示意谁呢,张三。那这里我们传入的呢,是二这个值1002,这是个整形值,这个整形值呢,就被我们的这个标签这个属性。告诉给买大了,但买买大家就明确知道,你传这个102它是一个整形的值啊,是个整形的值。这个整形值啊,这个整形值就这么一个意思就完事了,那我把它去掉行不行。去掉行不行?去掉完全是OK的是没问题的,比如说是1005。来执行我们的一个测试。
09:04
我们看结果这是不是1005啊,没问题,拿到这个数据。好,那回来我跟你说,为什么加也行,不加也行呢,这个pre type呢啊,它是用来表示的,是表示是DL接口中方法参数的数据类型,它的值啊就是说。Type,它的值是Java的数据类型,全限定名称。限定名称,或者是买BY定义的别名,那现在我这个用的就是全限定名称,全限的名称。
10:01
那这个是例如全系的名称,别名呢可以这么写,那这块呢,我用的就是int就完了啊,Int就是别名,那你这么写也是一样的。Int,好,就这么写。测试一下了。当然也是OK的,没问题啊,来看结果。这也可以,105没问题,那这个别表哪来的呢?别名不是我不是我创建的啊,这是买be的别名,这个别名呢,是在你的买be文档中就已经说明的。文档我们看一下文档啊。我们先去到这个网络上去搜一下。My Betty的官网应该是这个。中文的官网。嗯,稍微有点慢哈。有点慢呢,那先这先操作着,我们用一下呢,我们自己呢,下载的那个英文的那个文档也是可以的。
11:06
文档,我去看一下我的课程的内容。我是写在了这个课程里边,MY。我是下载后有一个资源,这里面不是有一个内置的这么一个PDF文档吗。你用它。好,P在文档中是不是能告诉你在哪了呢?你看我们这个说的这个type是在这个文档中,是不是第15页啊。在15页中有买白特斯的别名的。说明内容在第15页。我们看这能直接搜15吧,好。下面这个表格就是my bet内纸的别名啊,你看这不是买了内纸的别名吗?为的是给Java师学类型起别名的,别名就是短小,好记啊好记啊,就这意思。
12:05
那这边是别名啊,这边是别名,这边是你扎的数据类型,这边是别名啊,是别名,别名呢短小好记,那这里我们看。这是Java中的字符串,别名呢?小写的字符串。还有呢,往下来Java中的是in tIgEr,这是它的别名,或者是小写in tIgEr这边是Java中数据类型,这边是MYBY定义的别名,那么你用这个date的话,就代表是Java中的这个date,就这么个意思,别名。下面呢,还有别名呢,包括有一箱map,别名是map,或者是哈希map list的别名是list。A呢,别名是A,就是别名的一个定义,好,这是别名。目的就是说让你在使用Java的数据类型的时候能够简短一点,不用写那么长,就这么一个意思,就别名。
13:01
那我刚才呢,也跟你说了,这个play有也行,说没有也行啊,它不是强制的,不是强制的啊,往下来我们这说一个注意的地方,那就是说这个primeter type呢,它不是强制的。不是强啊,不是强制的,因为my bet呢,通过反射,通过反射这个机制,它能够找到或者说能够发现,能够发现接口参数的一类型。数据类型,所以可以没有,那一般我们也不写。因为你不写它也能知道嘛,所以这个值呢,可以没有啊,可以没有啊,所以简短的话就这么写就完事了,这是我们在开发中经常用的模式,就这么写,因为通过反射他能知道,所以这个呢,你就不用写是完全没问题的。
14:08
好,这是type说了半天,就是说他就是可以不写啊,可以不写。
我来说两句