00:00
好,那DDL当中我们应该还剩一个了,是不是创建命名空间啊,对吧,啊创建命名空间来创建命名。空间,那这块我并没有写一个判是否判断这个命名空间是否存在的一个方法,因为它系统没有提供。那我们要跟他说,如果生长环境当中你要用到这个内容,那怎么来做这个事啊,怎么做这个事,对抛异常,直接抓异常这种方式我们来看一下啊,好,直接创建密营空间,那就是public static,返回值还是同样的VO吧,啊,我叫create。Name space space对吧,Space好创建命令空间,想一下命令行里面操作要什么参数。是不是直接传一个秘密空间名字就行了呀,对吧,OK,那我们string类型的一个什么NS可以吧,啊叫NS。二加L,好,那第一步啊,或者不叫第一步吧,是不是我们当时看到创建命密空间。
01:03
是不是还是这个对象啊,你只要记得DDL都是拿它操作,DDL都是拿它操作,OK,那这块呢,应该是拿着in点。Namespace来看一下它里边叫什么东西,叫内命名空间描述器对吧?那简单呀,跟之前不一样吗?那第一步理论来说应该是干什么创建。命名空间描述器对吧,好六一个吧,按照我们的逻辑走,是不是六一个叫namespace。Describe OK吧,它是一个正常的类,不是什么接口,不是什么抽象类的啊,可以六吧,我们想的走。好,报错了,发现跟之前你调用构造方法调错报错位置不一样,以前是参数报错,说明你放的空参,它没有空参构造器,现在直接在构造器这个类底下报错。来看一下说明跟之前报错不一样吗?我之前是不是提醒大家说之前那个空参构造没有,是不是在这报错啊,还有印象吗?对吧,这直接在这个底下报错,说明跟参数没关系了,点进来。
02:13
私有他私有了你能用吗?用了对吧,因为你调用的方法不对,你看不见,相当于OK,那我们看一下,那说明这个他又要这个对象。对吧,又要这个对象,那又没有。所以应该是什么样子的。之前。我们写的那个的拦截器还有印象吗?对吧,来看一下。对吧,类似于这种私有化构造方法的很多,里边都有一个静态内部类。叫丢的。比这样好,我们来看一下啊,我们先应该找什么东西啊。
03:01
在这个里边要去找什么东西啊?找返回值为name space,是不是因为你要通过这个对象调用某一个方法去构造,那是不是应该找一个返回值,是那的一个方法找到了吗?Build,好,Build是一个方法,你应该是不是拿着他的对象。去调用这个方法没问题吧,啊,拿着他的这个对象去调用这个方法,那他的对象怎么获取,能直接用吗?人家是累不累,你能new吗?扭不了,那你得用这个类里面某一个方法,先去构造一下这个对象对不对,想一下这个逻辑啊,对吧,人家是这样封装的,人家这样封装的OK,那接下来我们应该把这个合起来,在这里边就找一个返回值为标的对象的是不是。想一下是不是这个逻辑,找一下哪个方法呀,这有一个的方法,还传一个spring进去,这个就是我们要的明密空间的名字。
04:08
它通过这个方式来得到标的对象,拿着这个标的对象点都要用什么build的方法来创建命令空间吗?啊创建密空间,所以呢,这个因为它私有化构造方法的大部分私化构造方法的类里面都有一个形态的一个build类。对吧,啊,尽量的不用累,后面呢大家还会大量的遇到,所以呢,这块我们不能用它的,好刚才有一个问题。我们是不是要用的方法呀。按道理来说,Q的方法不要name space的对象去调用吗?你这不死循环吗?我要用对象去调用build的方法去调用build。然后去通过这个方法来构建对象,这不死循环吗?怎什么样的方式可以打破这个死循环?现在我是不是要拿着一个东西,拿着name space的一个对象去调用的方法对吧?然后拿着这个可的方法得到一个build对象,去调用build来创建一个space对象,这是不是死循环啊?
05:13
有什么方法可以打破这个什么,如果说这个方法是静态的,是不是就打破了,你不用拿对象表吧。对吧,那你可以拿类去掉吧,来看一下当前这个create的方法。在这个吧,是不是就打破了这个死循环,因为刚才你要动用对象去构造当前这个对象,那不有毛病吗?你都有对象的,你还非得构造它干嘛呢?所以唯一打破这个死循环的一个方法就是什么?这地方是一个静态的方法就行了吧,那这个地方应该怎么写。是不是拿着那这个类。哎,那么describe对吧。呃。
06:02
这个吧,Name space还非得多写几个,因为它好像name space那个相关的东西比较多,Describe,注意这下面还有个什么东西对吧?但是这个包不是这个包吧,要找这个还是位包好点,调用这个C把NS给它传进去,然后点什么。点的。抗中奥加V得到我们那个什么那个space的一个描述器,对吧,啊,第一步它是这样创建出来的,因为他把它这个构造方法给它私有SOK。放在这。第二。叫什么?创建命名。空间啊,创建空间好,这个地方它同样的还有异常嘛,这个异常注意在生产环境当中,也不要去抛了,也不要去抛了,因为这块我们并没有做判断。是否存在它这里边儿更多的一个异常内容呢,就是说它会存在啊,它会存在,假如说这个地方抛异常了。
07:05
你可以这样啊,我们做这个事来。我们先干什么事呢?呃,先正常的去抓,哎,不是啊,不是抓异常,直接去抓异常,等会告诉你在那个生产环境当中,怎么对这个东西去判断它是否存在的,先这样来一下,这样来一下,是不是所有的异常都会短信站信息啊,对吧?好,这样是不是我们创建了一个民用空间,没问题吧,来,我们走一下。啊,先把这个走一下,因为我要拿一个东西。第四步叫。创建。命名空间测试啊,这边呢,我去打开一个客户端。好,然后创建平行空间测试,这个怎么写?可瑞。Name,那我们有什么东西啊?来创建一个密空间。
08:02
呃。0408可以吧。啊,创建一个0408这个明星空间OK吧,啊创建一个这个内容,好来我们走一下。哎,这个是之前的那个吧,因为我们当前面密空间是不是没有啊,如果最好最好的话是把这个东西给他租掉,那跑的更快一点是不是啊,跑的更快一点,等大他走完。走完了吧,好,走完了,走完了之后。怎么看?有了吧,好有了,那接下来告诉大家生长环境当中怎么做啊,这个事情来,我先把它注射掉,因为这个东西呢,是对于我们没有用了,对吧?啊都给它注射掉啊,只留一个这个方法来再走一遍,他一定会报错,报是不错。
09:01
创建失败已经存在了吧,来好异常了,我们把这个异常给他拿出来叫什么。Space exist except来告诉大家生产环境当中我们是怎么做的,这块抓异常呢?很简单,我再来一个什么。So。NS加这个叫命名空间也存在。啊,已存在。用这种方式。啊,用这种方式单独的把这个异常干什么,抓一下啊抓一下OK,那假如说我在这个try catch后面知道吧,我打一句话说。好好好。
10:00
尽管。哎。尽管存在,我还是可以走到这儿,是吧?啊,走到这儿啊。就是你要避免掉,因为它没有判断命名空间是否存在的这个方法,对吧,它不想表表是不是可以提前做,但是没有判断is name space exist,没有这个方法对吧?你只能手动干什么去开始这个异常啊,开始这个异常,因为这个异常大家没见过,我不能这样这样写,所以我刚才让他把这个异常抛出来了,直接拿到对吧?啊,拿到从源码当中就相当去给他捞出来了啊,大家走一下。那这样。是不是相当于做了命名空间已存在的那种判断啊,对吧?啊,代码呢,是不是不影响往后面走啊,啊随便可以往后面走,是这个意思,你主动的把这个异常给它处理掉啊,不让他抛出来,如果说你代码当中就装那个密密中间抛错了,那下面的代码是不是不执行的呀,对吧?啊,你手动的给他开除掉吧,啊开除掉诶。
11:06
手动的给他开掉,下面你可以接着去在这个咪密空间里面去创建表啊,这些东西都可以对吧?好,现在我们有了这个秘密空间,我如何在这个下面去创建表呢。命名空间我标了,我现在要在0408下面创建一个表。怎么创建一样的道理,把0408冒号写在这,哎,这个应该用英文的冒号啊。写在这,那这个就等于表明你这样写的话就等于是什么在0408这个命令空间下创建了一个表,能理解在命令行里边我们不是这样做的吗?对吧?那个data塔还记得吧?好,那我们走一下啊,把那一张表。他就会把它放到那个0408那个秘密空间下来看一下,直接立吧。没问题吧,啊,就是表明你交这个内容,它就会放在0408这个命令空间下啊,创建表是这样的创建的啊,创建表就是如果说在命令行当中,你不写这个内容,那就还是放在什么。
12:09
默认的这个命令空间下的啊,默认的命令空间下的是这意思啊。啊,这个是我们所讲的创建咪密空间,以及对他官方并没有提供判断咪密空间是否存在的一个方式,我们自己做了一个什么处理方法啊,我们自己做了一个处理方法,就是用开异常的这种方式啊,开异常的这种方式。
我来说两句