00:02
呃,下边咱们去建一个spring的一个工程。PRO04。Bo。哎,对。然后这个依赖哈,这个相关的环境,我们从这去去找一下。这个负工程,这个肯定是要的。然后呢,下边dependency里边。呃,这个只要你这个这个spring taste这个是要的。然后呢,别的,其实这些是连连买SQL折合买用的,这些就不需要了。
01:05
然后我们这儿呢,咱们去需要给他再整一个,呃。这个这个啊,Spring put start。Start data ready。哎哎,有了它,然后呢,下一步咱们。呃,咱们可以去加入。加入我们的主启动力。嗯,现在这个是说我们red这个start呢,它是一个新引入进来的一个依赖啊,这个仓库里边没有,他要去下载一下。
02:00
稍等。然后主启动类这边我们写这个。Spring boot application。打包。然后写一个闷方法。Application。点。好嘞,啊,这是这这个固定套路。嗯,然后呢,有了这个的话,下边这儿报个小错哈,看看这儿。这个就说需要刷新一下奥台服。更新一下就行了,这个这有个false,这个这个其实不需要勾哈,我从来都没有勾过这个没有没有什么用啊。没有什么用啊,这个其实我从来都没勾过啊,就是说他呃。
03:01
你如果下载失败那个价包你没有把它干掉啊,没有把它去掉的话,那它这个强制更新的也不会说把那失败的删掉重新去下。啊,它其实不不起这个作用,它这个是强制更新这个快照和release是吧,所以这个其实不是我们想的那样。把这小错去掉啊,然后我们这边写一个。什么一个测试?啊,这个呢,叫做我们来一个。A taste。来一个runway。Runner。The class。Spring boot taste。Control shift的哦。这是咋咋的个意思?
04:04
哎,这个准备好以后哈,下一步哦,对了,咱们得指定一个在压么或者pop里边哈。A。点。嗯,要么。指定一下它的前缀呢,叫spring。点啊,我们要指定的是这个。呃,我们地址哈。就是说你从这儿复制的时候呢,就是有同学就没有太注意,把这个就直接复制过来了啊,这个地址只是在这儿给你举个例子哈,你还是得找你这边实际的。你比如说你复制这个啊,或者说你的X shell的这个地方对吧。CC。哎,就是我们现在需要配的啊,暂时来说我们需要配的就是这一个。有了它以后呢,咱们下一步可以去装配这样一个东西啊autoor。
05:05
Private这个RA。Template。哎,你看这个东西吧,它需要你给一个键,给一个值。呃,如果说呢,我们。指定一个很宽泛的一个范围哈,如果是object类型的键和值,如果都是object类型的啊,这这是比较极端的一种这个情况。啊,这个东西我们看一下它在这个使用的时候。CTRL社会的O打T的这个包。呃,用这个red template这个怎么用呢?首先第一步哈,先去来一个OPS。哎,OPS呢,是operations这个缩写,你看啊,这个字有点小,Operations操作啊,是OPS是这个东西的缩写。
06:05
然后呢,看看你要干嘛,OPS for value。啊,就是Y6,就字符数二的值呗,啊是不是z set list。啊,这是个哈希是吧,等等这些个类型它都有哈,哎,我们这边for value。嗯,就叫operations吧。哎,获取用来操作。String类型数据的。呃,这个operation,这个value operations这个对象。第二步呢,我们要比如说咱们存入一个数据。啊哎,我们去借助这个对象去存入数据。那这个就是存的就是字符串的数据。Set一个。这个键和直哈。
07:08
啊,来一个good。哎,值呢,给他来一个。Morning。哎,这就设置完了哈,设置完了,他这边他这个有没有返回值。没有返回值是个贸易的哈,哎,然后。设置完了以后,咱们可以到里边看一下这个值存进去的情况。这边日志这个暂时看不出来什么哈,没有什么打印,我们这边来这看一下。可性。是有这过的哈。但是这good前面怎么多了一串这个东西呢?啊,你要是不知道的话,你去这个get good,你啥也得不着。
08:00
你得去访问他。然后你发现这个值呢,前面也加了一串这个东西。所以说呢,看这意思吧,估计他是给那个。嗯,序列化了。因为我们这给的是object类型嘛,Object类型它给序列化了以后存到里边。那你然后再取这个值呢,你还得再反序列化出来啊,然后呢,第三个啊,这个我们说尝试嗯,读取。这个数据。读取刚才设置的数据。Operations their get。还是传这个K。得到这样一个,嗯。嗯,这个叫我们说读出来的值,哈瑞Y6。打印下吧。看看这个玩意出来是啥?
09:05
咱们就省事了哈,没有整那个log。读取来的,读取出来倒也还是这个,猫倒还是这个,还可以哈,就不需要我们再做什么转换了,哎,只不过呢,我们会发现它存到red里边的时候,这会和我们想的会稍微有点不太一样。啊,这个你要是不留神的话呢,说不定还出点小问题啊,因为这个跟我们想的会有一点出入。那如果说我们说这个让他跟我们想的一样多好,Red又不是不能传存字符串,它可以存字符串。嗯,所以在这的话呢,咱们用一个这样的东西哈,我还是red。不对。装配。能再装配另外一个吗?这样啊,咱们为了避免它这个装配的地方万一出什么问题哈,咱们先出试点哈。
10:05
重新写一个。这回咱们这么干。我这泛型啊,我都给它指定成字符串。诶,给他来一个。嗯。Red。Complete。为了和那个另外一个真的。呃,这个正式的string template相区别哈,这个东西我们给他。名改一下哈,这个叫MY。哎,刚才这个叫。麦。RA。Complete。然后呢,这边my string template一样的get,这个叫OPS for value。
11:05
然后呢,Operations?点S,这回就都是字符串类型的了。哎,我们给他来一个。嗯。嗯。Happy newyear,好吧。嗯。你们准备节目了吗?创建一个这个对象。呃,第二步。这是准备数据。第三个啊,执行一下这个设置。
12:02
哎,咱们去看看这个。好好嘞,绿条,我们就喜欢绿绿色。然后呢,你再看这回呢。这东西就你包括看这个键的时候,包括看它这个值都不会再带前面这些呃多余的东西了,这个其实就我们就觉得就好很多了,哎,就操作我们这个宿舍。那么那么这时候我们说啊。嗯,Spring呢,他给我们准备了更加方便的这个做法啊,因为他其实已经给我们都准备好了。确实是已经他已经给封装了一个东西。就叫string template。
13:03
就是以后的话,咱们就主要就是用的就是这个了啊public void test。A real。这是真正的。Template。诶。呃,这个呢,当然第一步呢,还是先去获取这个操作对象啊。呃,获取这个叫做。Y6。这个对象。Get y,呃,这个叫做啊,不是这个叫OPS哈,Y6。他这一出来就是字符串类型的。Operations。第二个准备数据。
14:02
啊,给他来一个。嗯。不知道写啥了,哎呀,这个一串一。然后来一串这个Y6。就随便来这么一个第三个执行设置。Set。TY6。就是这个就是我们自己就不用操心这个泛型的事儿了,他已经给准备好了。啊,这不是K1串一。哎,这个都是跟我们想的一样,他为啥能做到这一点呢?其实挺简单的,他呢继承了red template。
15:08
继承父类的时候,已经把泛型指定成四类型了啊。啊,所以这个就就好办多了。嗯,那当然说这个,如果我们要是想去操作,比如说别的类型的话,咱们看一下啊。嗯,比如说呢,咱们来一个呃,List的这个操作哈。String red template.ops for list。哎,这这里边也是啊,这建筑对还是还是这个字符串类型。OPS for。第二。你比如说我们的这个命令呢。嗯,L。哎,你看他这个不叫这个名。它叫left push啊,这个也是你去传这个键,传这个值,那就是说往这个键里边挨个去增加这个值。
16:06
啊,这还有L这left push2,哎,你这儿可以直接放一个这个集合。咱们试一下啊,咱们比如说我们老一套啊,这个fruit。咱们来这个Apple。Banana。Orange,哎,好像学英语都是先从Apple开始学是吧?不像学中国话,先从爸爸妈妈开始学是吧?估计这个老师怕同学们占他便宜。哎,然后那这不设置指定完这个以后呢,咱们跑一下啊,看看这个能不能存进去。
17:00
Fruit。关键是看里边的值。哦,对了,糊涂了哈。这个人家是人家是这个list类型的是吧,这边提示你一个wrong type对吧。哎,这个list呢,是用什么命令建立的呀。啊,嘿,太棒了,你们居然连这个都能记得。零到负一是吧。哎,你看我都不记得了,你们还记得是不是你们这个你们你们你们太厉害了。嗯。这就是操作这个list,所以说吧,这个东西呢,其实你也不用去。呃,这些方法呢,你也不用刻意去去去记,反正你写的时候看它这个提示啊,到提示里边去根据方法名去去找就好了,对吧?哎。
我来说两句