00:00
啊来,那么从今天开始呢,我们学习诶第三个框架啊,就是我们讲的啊MY杯这个框架啊,首先啊,在讲这个框架之前呢,呃,我们先来给大家明确一下这个框架啊,它是来做什么事儿的,OK,呃,它呢是一个持久城的一个框架啊,那么对于这个持久城的框架来讲呢,啊,其实主要就是跟我们的数据库啊打交道的,然后呢,说的更精确一点呢,啊,就是来帮我们去完成诶DAO啊,就是我们这个数据访问对象啊,这个DAO的一个开发啊,那也就是要完成与数据库的一个真删改查操作啊,就是通过这个my be这个框架啊,我们来去做啊。呃,那么我们先明确一下啊,他是帮我们做什么事的,然后接下来呢,我们来看一下这个MY,它的一个发展,还有一个啊,它的一个特点啊,我们来看一下。呃,那么现在我们讲的这个买bet斯呢,其实它原来啊,就是它这个一出来的时候呢,并不叫做买bet啊,而是叫什么呀,它原来是阿帕奇的一个开源项目,它叫做I be啊这个可能呃,做过这个Java开发的啊,应该有了解过,就是我们以前也是比较流行的一个框架了啊,叫做I bet,呃,那么现在的话,我们叫的比较多的就是什么呃,SSM对吧?那么这个M呢,其实描述的就是我们的买bet,呃,那么放到几年之前的话呢,可能啊,也有人听说过叫做什么ssi是吧?啊不知道有个同学听说过啊啊那么其实这里面的I呢啊,描述的就是我们的I be。
01:37
明白吧,啊,那么现在我们所要讲的这个买be斯呢,其实就是在这个I bet啊这个基础之上啊发展出来的啊,我们来看啊,本身呢,它是阿帕奇的一个开源项目,然后呢,大概在一零年的时候啊六月份,然后这个整个的这个开发团队呢,全部都。跑到谷歌去了是吧,啊,全部都什么迁移到了这个谷歌啊,这个code里面,然后呢,呃,随着这个开发团队全部到了这个谷歌呢,然后呢,正好呢,那会儿也赶上我们的I bes3点叉啊,也就意味着I bes3啊这个版本的一个发布,然后呢啊,估计是也也是这个啊,为了纪念一下是吧,然后就改了个名字,就改成了叫做my be。
02:18
啊,所以说呢,从这句话里面,我们理解的就是呃,My be呢,其实是从什么,从这个I be3啊这个版本开始,我们叫成了my be,那么在这个三之前呢,比如说什么二啊,或者什么一什么的,那么我们都把它叫做什么it啊,说白了这个iab跟这个买AB呢,啊,就是同一个框架,对吧?但是呢,呃,实际上这个iab利啊,就是这个三之前的一些东西,跟这个买AB里面用的时候呢,还是有一些小小的差别的,但是呢,基本上都是差不多的啊,那么呢,我们也不用再去关心I be怎么用的啊,你现在只要把这个买be学会了就可以了。啊,然后呃,在大概这个03年11月的时候呢,然后整个这个买bes的这个项目呢,又全部都迁移到了我们现在诶比较流行的一个网站啊,就是我们的github迁移到了这个网站上面了,因此呢,呃,我们要去使用到这个买be啊,你要去下载它相关的这个开发包,那么你要去往我们的github这个网站上面去下载。
03:20
能明白了吧,这是它的一个什么发展的一个历史啊呃,然后这个AB这个词的来源的话,就是一个Internet和一个什么这个这个怎么读aet是吧?啊叫aet啊,它的一个组合啊,它是一个基于Java的持久成框架,那么刚刚我们也提到了,它是一个持久成框架啊,然后呢,呃,它提供的这个持久层框架呢,包括我们的搜map啊,就是我们的搜映射,还有我们的诶就是state access,然后object就是我们的DAO数据访问对象啊,也就意味着我们使用这个买bet啊,或者说呢,也叫买bet吧啊,他们的基本都是一样的,通过他们两个呢,我们就可以去啊,诶去开发我们的这个do啊,呃,这是它的一个什么发展的一个历史啊,然后我们再来看一下这个框架的一个特点,这个框架有什么特点呢?呃,它是一个支持定制化烧烤啊,什么叫做定制化烧烤呢?啊,那么这个其实要跟别的框架来去做一个比较来说。
04:20
说的啊,其实有一些框架呢啊,我们就拿其中的一个来讲吧,就是一会我们要去说到的啊,有一个框架叫做Hu net啊呃,这个框架呢,就是我们以前所说的那个什么SSH是吧?啊,这概念比较多是吧?啊,我不知道你们能不能分得清哈,这个ssi,然后呢,S啊,应该是先SSH是吧?啊这里面的分别描述是什么意思,你们知道吗?啊,我来跟你说啊,这个ssi是什么呀?Po VC啊,不是啊,其实那会这个S是two能理解吧,然后这个SSH呢,也是po to,而这个SM呢,POPOMY。
05:12
明白吧,哎,这都是有一个这个发展的路线的,能听懂吧,啊你不要看到S,你就是SPAVC是吧?啊这就显得我们有点没文化了,对不对啊,其实以前的话呢,有一个很著名的框架叫做two啊,只不过呢啊,现在用的相对来讲比较少一点,好吧,OK,这个大概知道一下啊啊啊那么它其实跟这个哈net的对比性的来讲的什么样的,这个定制化so烤呢?啊,因为哈net这个框架呢,它也是一个持久性框架,而且这个框架也是特别优秀的。啊,优秀到什么程度呢?不需要你写sool语句就能操作数据库,就优秀到这种程度对吧?啊那么当然这个的话也是由当时的那个,呃,It行业的这个背景啊来去决定的,就是当时的话呢,呃,可能程序员呢,也有也没有那么多,对不对啊,也没有那么多,然后呢,呃,本来程序员就比较少啊,如果说你还要求程序员你既要会Java是吧,又要会数据库,那这样的程序员就更少了,对吧?所以说呢,他就说啊,这个你做Java的,你做Java,你做数据库的,你就专门做数据库啊,我不需要你们什么都会啊,那么但是问题就来了,你说做Java的你不会访问数据库,这肯定是不行的,对吧?呃,你不会这个写SQL语句,那肯定是操作不了这个D,这个操作不了数据库的,所以说呢,他就搞出来一个这个have net框架,那么这个框架呢,它就可以支持什么呀,不不会数据库的这法程序员呢,去操作你的数据库,因为不用你写S号语句,全部都是框架帮你生成的。
06:43
理解了吧,OK,他强调到这种程度,但是呢,呃,这个就一定好吗?可能在当时来讲的话呢,诶我们的业务呢,也不是那么复杂,对吧?啊,也没有什么,现在呃,这个并发量比较高的这个电电商啊,或者什么其他的一些什么应用啊,那会儿呢,可能就是做一些什么很基本的一些管理软件啊什么的啊,所以当时来讲的话,基本上没什么问题,但是放到这现在来讲的话呢,其实它就存在一些问题了,因为我们要不仅要把这个软件做出来,我们还要做什么呀,做各种各样的优化,我们希望我们这个软件做出来,它这个跑起来效率是特别快的,对吧,速度是特别快的,所以说呢,我们就要去做各种各样的优化,那么你再去优化一个项目的时候,其中有一个最关键的点,那就是我们数据库的一个优化,那么数据库的优化的话,我们又可以从这几方面来去考虑啊,啊,其中最本质的一个就是你必须要去优化你的S考L语句,对吧,除了S考L语句的话,那就是其他的数据库的一些啊配置啊什么的啊,其他的一些优化啊,那么我们就说到这个数据库的这个优化上。
07:43
如果说呢,你要去优化你的这个搜狗语句,那么起码你这个搜狗语句得你自己去写。能理解吧,假如说框架帮你生成的,那你是没有办法去参与到里面的啊A此呢,对比性的来讲的话呢,买be它是支持我们定制化搜狗的,那也就意味着使用买这次框架,你是需要去写so后句的理解吧,而对于我们现在的这款程序员来讲。
08:07
那circle,那就是个小事。能理解吧,啊so,就是个小事,以前的话呢,可能你会Java就行了,现在你光会Java不行,对吧,你得把这个Java跟Java相关的这一套东西,你都得什么,有一个最基本的认识啊,基本的了解,像这个三号有句你必须得会写。能理解吧啊,所以说呢,呃,我们现在这个使用版的话,就是要求大家搜语句,还是要我们自己去写的,那么这样的话呢,我们就会去做一些什么定制化测考,就是根据我们的业务,然后呢去做出一些什么优化来,能明白了吧,OK,然后呢,呃,它还支持一些什么呢?存储过程啊,以及这个高级的映射啊,它是一个什么优秀的这个持久存框架,就是除了你可以写你的这个骚考语句之外,还可以去写一些我们这个存储过程啊,这个呢,这个概念的话,大家可能没听过啊,呃,这个在后面呢,你们应该会学到啊,它是一个数据库的一个编程啊,编程的一种方式啊,存储过程就是把这个程序呢啊,相当于写到我们这个数据库里面,让数据库呢,帮我们去做一些运算,而不是说把所有的运算呢,都交给这个Java来做啊,然后呢,以及是什么高级映射,那么高级映射的话呢,我们在后面呢,也会给大家讲到啊,就是我去做一些查询的时候,他怎么帮我去做一些什么高级的映射,OK,这是它的第一个特点啊,第二个特点呢,也是我们比较喜欢的啊,就是。
09:25
呃,它避免了几乎所有的JDBC代码啊和什么呀,手动设置参数以及获取结果集,也就意味着我们在使用买vet的时候,我们是不需要去写一些什么JDBC原生的一些代码的,比方说像什么预编译SL语句啊,给soql语句的什么Java赋值啊,执行S语句啊,啊,最后封装结果集啊,这些操作我们都不需要去写,能理解吧?啊,使用哪个例子其实特别简单,你就写一条S考L语句,然后呢,写上一个DAO的接口就行了,其他的一个不用我们去管,明白吧?所以说这个东西是相当强大的。
10:04
啊OK,呃,这再再下一个,呃买白呢,它可以使用这个简单的xma啊,就是它也支持我们使用xma,或者说呢,基于什么啊哎注解啊,来进行一个什么配置和一个什么原始映射,就是呢,你可以通过XM的方式或者说注解的方式来去做上一个配置,完成我的一个什么基本的映射啊,然后呢,呃,将接口呢和我们这个Java的po JO啊,就是我们一个普通的Java对象啊,映射成数据库中的一项什么记录,那么这个地方的话,我们频繁提到了一个概念叫做什么映射,能理解吧,哎频繁提到一个概念呢,叫做映射,那么其实哎这个映射呢,也是我们买be这个框架它的一个特点,因为它就是一个orm框架,啥叫做orm呢?就是一个对象关系映射啊,这个的话呢,我看下下面还没有提到是吧,那我可以给大家怎么写到这啊,就是再加上一个吧,好,它是一。
11:05
一个啊,半自动啊,我们还得说的明确一点是吧,半自动的orm框架啊,那么这个OM呢,它翻译过来就是一个什么呀,Object relation,对象关系映射框架,啥叫做对象关系映射啊。对象是什么呀?加va对象对不对?关系呢数据哎,就是我们数据库的什么数据了,对吧,为什么把这个关系描写的这个数据库的数据呢?因为我们现在所使用的数据库基本上都是一个关系型数据库吧。这个是知道的吧,哎,我们用的都是什么关系形式这种数据库,所以说呢,他把这个关系呢,诶就描述成我们的一个数据库的数据A此这个orm,它表达的意思就是什么呀?就是把你Java里面的一个对象,然后呢,与数据库里面的一条记录呢,把它们两个之间呢,完成一个什么映射,只要把这个映射做好了,那么我的一个对象其实就对应一条数据,当然我的一条数据呢,诶也应该要去对应一个对象。
12:10
明白了吧,这就是一个or RM这样的一个概念,好,但是呢,我要强调一下,它是一个半自动的啊,那么这个半自动的话呢,其实主要就是因为我们要去写方语句,而对于我们一会要去给他提到的一个东西就是这个哈,对吧?啊,它是一个什么呀,全自动的O因为什么呀,对于他来讲,所有的搜相关的东西都不需要我们去管,我们只需要做映射就行了,你把映射做好了,所有的操作他都能帮我们自动去完成,所以说呢,它是一个全自动。理解了吧,OK,那么一会的话呢,我们再来给大家去对比一下,到底哪种方式比较好听,明白了吧,好,现在的话呢,你就先把我们买be它本身的一些什么哎特点啊,把它先把它记一记啊,你现在有一个最基本的认识,然后呢,我们带着这些的特点呢,再去什么深入的去学习我们的买这个框架啊,OK,那我就先给大家介绍这么多啊。
我来说两句