00:00
好啊,咱们写完了创建表格的这个代码之后呢,还不算完啊,回过头来呢,还要再验证一些东西啊,首先呢,我们在创建一个表格的时候,可以给它添加一些列足的描述啊,那添加的这个信息它会不会生效呢?哎,我们需要到jal里面去查看一下啊,De IB啊,然后艾特归国。冒号student啊,括号执行好,首先呢,我们是可以看到的啊,我们创建了两个列足info和mst啊,那对应的呢,它的Y版本都是五啊,这个是因为我们for循环里面写的都是统一都写成五了啊,那对应的都是五这里面。列组里面所有的一个参数呢,都可以在我们的对应的代码的这个位置啊,找到对应的API方法对它进行一个修改啊,我们就不一一演示了,别的呢,咱们还没有讲原理。也不太理解具体有什么含义对吧?好,除此之外呢,咱们这个代码还有一个地方是可以优化的啊,咱们这里呢,创建了大量的一个对象啊,叫建造者或者是描述之类的,对吧?那下面呢,还有一个for循环啊,循环里面呢,也有对应的一些东西啊,对应的一些东西哈,一直到我们什么地方呢,这个地方啊,这个地方它会有一个判断对吧,判断这个表格呢,它已经存在啊,其实你的代码呢,再写起来啊,你说正常使用呢,它肯定也是没什么问题的啊,但是呢,我们这里面要解决几个问题啊,它会有一些小小的bug啊,比方说什么bug呢?你看我们这个地方啊,你是一个可变参数。
01:39
对吧,是一个可变参数,那意味着什么呢?可变参数是可以填零的参数的,你看你填零的参数,你这个方法也不报错对吧,那你方法不报错,你运行一下它会不会有问题呢?运行。我们来稍微等他一下对吧,我们都知道创建HP表格的时候,你是不能够一个列足都不写的啊,你你的表格里面连一个列足都没有,那就像买SQL表里面一个列都没有一样啊,你就不是一个表了,对吧?哎,有。
02:13
行,但没有列这什么呢,一个一条水平线对吧?啊,那是不可能存在的,好对应这边呢,我们可以往上翻啊,首先呢,它这个表格已经存在,以及其他代码呢,是会正常运行的,因为我们写try catch了嘛,但是呢,它这个地方就开始给你介绍了,他说你这个表格呀,必须至少有一个列组啊,不信的话你去看哈,咱们就不去看了啊,咱们已经知道了,它至少要有一个列足啊,那我们这个方法呢,由于使用了可变参数啊,导致呢,你填零个列组,它也能够运行,但这个运行显然是有问题的啊,显然是有问题的,呃,那这个问题呢,我们看一下我的代码啊,它会一直往下走,获取me怎么怎么样怎么怎么样操作,对吧,一直往下走,一直走到哪呢?一直走到。这个地方考table,他才发现,哎呀,原来没有列足,这就相当于什么,相当于你出门去办一件事,对吧,需要拿身份证,哎,你一直走一直走一走,走到地方了,你才想起来有没有带身份证啊,那这就。
03:12
哎,你为什么不早点发现呢?所以啊,我们应该在最前面的时候。在这个位置对吧,首先在进入到这个方法的时候呢,先来判断一下,哎,我是否有足够的列足啊,这里呢,我们应该提前判断对吧,判断是否有啊,至少一个列足啊,这里呢,你就可以用if来进行一个提前判断了,怎么判断呢?Column families,它是一个数组点Les。对吧,如果它等等于零啊,如果它等于零,我们这里呢,直接可以写了,对吧,直接输出啊叫创建表格,至少啊,至少有一个列足啊,至少有一个列足啊,它一个列组都没有写,那自然是不能够继续往下走的,那我们这个方法里面,如果你不想让代码继续往下的话呢,写一个return,让它提前返回就可以了,好,你只需要加上这么一个判断,它的健壮性会更强一点啊,你对应往下的时候呢。
04:14
哎,这个地方标号写错了对吧?嗯,这不是2.3了,应该是2.6啊。对吧,啊,你按这个号来嘛,好,那我们对应往下走的话呢,再来测试一下啊,如果我把那个地方检测给它加上的话呢,你来运行。呃,这个速度上快慢啊,哎,倒是不太能够感受的出来啊,因为我们现在这个速度呢,主要慢就慢在创建连接啊,一旦这个连接创建完成之后,他提前已经说了这些,呃,In的获取啊,还有一些创建一些对象呀,这些呢都是非常轻量级的,他很快就能操作完啊,速度上快慢倒不是很能够体现出来,但是呢,逻辑上啊,我们写的呢,要更清晰一点,对吧,他应该提前判断,然后创建表格,至少有一个列足,你这个代码呢,就不要再去往下写了啊,有可能啊,你在实际开发里面相应代码还挺复杂的啊,还挺麻烦的,那你要最开始的时候就给它返回就可以了啊,那本着这个思路呢,其实我们还可以再对它进行一个简单的优化啊,如何优化呢?诶,你也不要一直往下面创建这个列足描述创建列组,一直到创建了啊,也不要在这个地方打印表格里存在了。
05:22
什么时候呢?哎,我们是不是可以用之前的方法啊,表格是否存在来提前进行一个判断啊,也是可以的,对不对,呃,这个呃不能叫做优化啊,因为你提前判断跟之后再判断呢,对于系统来说呢,都是一个请求,对吧?诶区别呢不是特别大,我们只是为了让代码呢看起来更清楚一点啊,这叫判断表格是否存在啊叫if。怎么样呢?我们需要调别人的一个静态方法,叫is table this是否存在,存在里面呢?我们填上name space,填上table name啊,逗号table name,好,如果这个为true的话呢,那它就是存在,对吧?我们判断的就是它存在,我们可以直接输出叫哎,表格已经存在啊,我们就不需要再继续往下判断了,直接写一个return啊,这样也是可以的啊,也是可以的,对吧?我们只是让代码呢更清楚一点啊,你说它速度会不会更快一点呢?微乎其微,我们几乎感觉不到,因为在is table一个this这个方法里面也获取了din,对吧?哎,那你说我直接获取了,咱们直接往下走,直接判断会不会这个快一点或者慢一点呢?哎,这个微乎其微啊,区别不大,我们只是会让代码呢看起来更清晰一点啊,那这个呢,咱们也可以来创建一个一样的一个表格,对吧,创建一个student。
06:42
嗯,这里呢,我们写上不同的一个列足,叫in for1啊,你来运行。它是按照表格来进行判断的啊,我们即使是直接用create table,它也是按照表格来进行判断的,那列足一样不一样,这没有用啊,它表格如果存在的话呢,是没有办法再创建一个表格的。
07:07
好,稍微等待它一下。好,这边呢,就会直接给我们打印格呢,已经存在啊,它就不会再继续往下走了啊,相对呢,更清楚一点,对吧,你找代码的时候呢,也更方便一点,好这是我们关于创建表格呢,有问题需要去解决的地方啊,我们来解一下。
我来说两句