00:00
哎,这个呢,我得把这个图片呢放一下啊,就是整整个呢,直接一起看的话呢,显得会稍微有点乱,所以我这PPT呢,这次打开的时候稍微有点慢,稍等一下啊好,那它这个打开的过程呢,咱们也可以稍微说一下,你看我们现在呢,要讲的是CDBC啊,实际上是我们这个服务器端再往后还涉及到的一个内容。哎,服务器端我们跟具体的数据库去交互的话呢,我们用的就叫做GDBC。啊,用的就是GDBC,以及呢GDBC,我们以它封装起来的have或者是MY这样的框架。啊,真正在开发当中。就听说过一个同学哈,这也都是好几年前了,那个同学呢,毕业以后呢,去在三星,说三星里边呢很崩溃,为啥呢,第一个啊用的API呢,是5.0之前的啊,发型啊那个很多都没有是吧,很崩溃啊,说另外一个更崩溃的,竟然没有用框架啊,自己去写JDBC。我说那差不多,要不就离了算了是吧,再换一家公司啊,哎,这个用的技术呢,稍微有点老啊,当然不是说三星都这样啊,至少他在国内的企业呢是这样子的,嗯,那就是我们刚才说的呢,其实是我们服务器端再往后的一个技术哈,那咱们这块呢,再看看这个往前都涉及到哪些技术,首先呢有两端,一个呢叫浏览器端,一个叫服务器端啊这呢,咱们就没写客户端啊,以浏览器为例。
01:24
那么在浏览器端这块呢,有三个主要的技术,一个呢叫HM,一个叫CSS,另外一个呢叫javascript。这个多少应该都听过吧,是吧?对的啊,这三个技术呢,就构成整个浏览器端的最核心的三个技术啊,这叫移动端的三板斧啊,这个HM呢,来负责整个浏览器端的页面的一个骨架,就整个你要看浏览器,大家呢,你现在你可以想象你任何一个打开的浏览器的一个页面,整体股架都是HL,都是一对一对的标签啊,这就是HML的骨架,那CSS在这里边充当什么样的角色呢?充当美化,对就让整个我们的页面呢,看起来更加的炫一些,更漂亮一些,后边呢,大家学外部的时候呢,CSS样式一上你会发现确实不一样,就跟说这是一个女生,这个女生呢,其实也挺好的,但是呢,没化妆是吧?哎,然后呢,CSS呢就相当于是化妆了,化妆以后呢,明显感觉不一样了,哎,这就是这个CSS它起的一个作用。
02:33
啊或者呢,中国现在的化妆都懒得化了,直接美颜一下是吧就可以了啊哎,然后呢,这个GS咱们习惯上就称为叫GS了啊啊叫javascript它呢来负责就是整个页面的行为。啊,行为就是比如说我们进行一些验证,比如咱们这个注册的时候呢,哎,会写这个注册的信息,用户名啊,密码啊,比如说你这个密码下边有个叫确认密码,我们写完以后呢,点一下注册它这块提示,你说密码和这个确认密码不一样,对像这些呢,都是我们GS在提交表单之前的一些验证行为,这个都是通过JS来做的,就好比是刚才那个美女呢,化妆了也很漂亮,穿的衣服呢。
03:19
也很性感是吧,但是它不动不动呢,你感觉就稍微差点意思是吧?哎,走起来以后呢,你发现更美了是吧?哎,就是让你这个页面呢动起来了,哎就叫GS的一个行为,所以这三个技术呢,我们可以称为它负责整个页面呢,叫结构表现和行为啊,这是我们说的前端的三个主流技术啊,大家后边学习web的话,这三个也都会学啊,那么基于这个GS呢,我们有一个GS的一个库,这个库呢,叫做g query。Quiry啊,就是我们其实可以用原生的GS呢去实现页面的一些逻辑的,但是呢,写起来呢有点崩溃对吧?哎,那我们这块呢,就把GS的一些操作就给它封装到一些方法当中了,那我们就构成了一个叫j query库,那开发当中呢,我们实际上是可以用j query啊来实现操作的。
04:11
啊,有本书非常经典,叫风力的g query啊,可以下来考虑看一看啊,那么现在呢,其实前端开发那JA query呢,是其中的一个比较主流的,算是一个框架吧,那现在呢,用的更多的呢,还是叫啊这个有的念voe,其实官方人家念view啊,官方说这个发音呢是叫view是吧?对view呢是现在呢咱们国内开发最主流的一个框架啊,除了它之外呢,还有一个呢叫react啊,然后呢,还有同学可能听过叫安哥拉GS,哎,这是现在前端应该算也比较主流的,呃,三个技术,但是安格拉GS呢,现在呢是基本上就用的很少了,在国内啊,然后这两个呢是比较主流的,而这两个里边呢,它又是占绝大的份额的,它还简单,这个呢就是稍微难一些,使用的呢,就稍微又少一些啊,这个呢是涉及到我们前端的一些技术,咱们后边呢,在讲到在线教育这个项目的时候呢,咱们就会用这个view,所以大家会对前端呢,也有一。
05:12
个深入的一个学习啊,这个学view的一个目的呢,就是回头大家你虽然是做后台的,但并不是说你做后台前端一点也不接触哈,最起码你做后台也得有一个后台的管理页面嘛,你不得写写这个三个技术嘛,虽然说你写的到时候会稍微丑一点,但是最起码功能也得有嘛,是吧?诶然后同时的话呢,我们如果做这个,哎,互联网的这种项目,呃,其实你也要接触接触这个前端,看看怎么去进行一个数据的交互的啊这种啊,那这里边也会有个方向,就是大家如果学到后台以后呢,想往前突,那这块呢,就是一个全站开发,就是前后都能写,叫全站开发是吧,然后你要再往后突,你可以出大数据,可以突云计算啊,这是另外的一个方向,包括呢,可以图数据库。是吧,这是几个不同的方向啊,看你个人的一个技术走向好,那么接下来我们这块呢,服务器端,诶我们提到了一个叫汤卡服务器,诶他们开服务器呢,在整个服务器端的这个服务器市场当中占的份额呢就比较大啊,我们这块呢,讲web的时候呢,也是以他们开的服务器呢来来作为一个载体啊,搭建一下他们开的服务器,然后这块呢,就提到个叉包文件。
06:20
这个叉帽呢,其实也是一个语言啊,叫extensive markup language啊跟这个L呢是同一个意思啊,这个叫叫超文本hyper test markup language,超文本标记语言,这个呢叫extenive,就可扩展的标记性语言,嗯,区别是什么呢?就是说这个叉呢,我们可以自定义标签,主要的作用呢,是用来诶写配置文件的。啊,写配置文件的这个,咱们讲这个BC呢,后边涉及到数据库连接池,咱们也会用这个叉帽,其实这个插帽呢,呃,更多的啊,传统上来讲,它是负责后台这个事,就是他呢不负责显示,负责显示的事呢,是由H来做的,他呢主要是负责后台这个配置的事。
07:05
啊,就跟说你这个这个呃,去一家饭店,这个呢,是服务员长得挺漂亮的,挺得体的是吧,哎,这是H帽做的事,叉帽呢,就后边呢,是专门自己做配菜的。还不是厨师是吧,厨师呢,做的那些菜不都得得有人洗一洗啊是吧?哎,这个提前切好啊,做配菜的就差帽角色呢,有点惨啊,其实在移动端的话呢,这叉猫就从后台走到前台了。咱们写的那个安卓应用大家没写过啊,就是安卓应用的那个页面,其实是插毛写的。啊,其实长毛起来就是从后边走到前面了啊,传统上认为就是它得在后边,其实呢,移动端它就在前面了啊,这个了解一下啊,然后呢,这个Tom KD下边呢,我们要讲一个组件,这个组件呢叫solid啊,大家呢,就是咱们今天呢讲JDBC,等我们讲完JDPC以后呢,再接着就学这些东西,你会有好几天的时间呢,就碰不到Java。可能会比较想念是吧,哪一天能看到呢,讲色的时候你就看到了啊,也就是我们在这个so里边,咱们起的就是Java代码了,那你写Java代码干什么用呢?跟你浏览器去交互啊,啊浏览器你发送了一个请求,比如说你想做一个用户的注册,那你发的这个用户名密码发给我们这个后台以后,诶我们搜类呢,首先获取到你发送过来的这个用户名密码的这个数据。
08:23
哎,咱们再接着呢,跟数据库去交互,给你存啊,那这个谁去做这个事,就是我们这里提的,So,它是咱们这个汤CAD服务器里边最重要的一个组件,作用呢,有三个,第一个获取用户的请求。就是把你这个请求参数呢,先拿到是吧,诶就是先要获取请求,第二呢,就是它叫处理请求,处理请求就是看你请求是什么了,比如说你想注册,那我就把你这个数据呢,存到数据库里边,你想登录,我进去数据库里边校验一下,看看这个是不是已经,呃你写的用户名密码是靠谱的,或者你想看一下你的这个购物车的数据,我们也去数据库里边帮你去查这个表,这个呢就叫处理请求,然后第三个你处理完以后呢,你不能没事儿了,你得给我响应,所以呢,我们第三步呢,诶这个so又会给你响应回去说注册成功啊,登录失败啊,诶购物车的数据给你展示啊,这就是诶so帮你做的这三个事。
09:22
啊,准确的说呢,应该是一个事的三个步骤啊,那么浏览器跟我们服务器端这个搜猎的进行交互过程当中,我们需要遵循相关的协议,这个协议呢,就叫做HTTP协议。啊,叫HTTP协议,我们在讲Java基础的最后呃几章当中提到网络编程,这属于我们属于应用层的一个协议,哎,就是我们要求呢,浏览器你发送的数据跟我们这块呢,去接收的数据满足相应的一些规则,这就叫协议的意思了,比如说你请求的时候,哎,我们所谓的叫请求行,请求头,请求体,响应的时候呢,诶,响应行,响应头,响应体,这个呢,我们讲外部的时候呢,会重点来说这个HTP协议的这三部分和这三部分,这也是面试当中比较爱问的一个点。
10:09
啊,就是对HTP协议的一个理解啊,就涉及到这样的请求和响应的一些细节,那至少大家应该知道,其中一个就是响应这块呢,我们提到一个,呃,响应码在响应行里边的有个响应码,响应码呢,比如说大家之前听说过的404,听说过也见过,每次看到四零字呢,就非常的遗憾,是吧,资源找不到了,诶这个404就是我们HTP协议当中关于响应码的其中的一个规范啊还有呢,比如说200,这就正常访问的302,哎,请求的重定向500啊,服务极端的代码有bug。啊等等,这就叫响应码啊,诶这是HTP协议啊,然后呢,我们这边又提到一个叫GSP技术。Java server配置。Java服务器端的页面,这哥们干什么用的呢?刚才我们提到一个so类的作用,第三个点呢,就是说它能够给我们显示响应数据,比如说呢,你想查看你的购物车数据,那这时候呢,就涉及到这个页面的一个展示了,这个页面展示的话呢,按说呢是由so来做这个事。
11:15
啊,So呢,也确实能做这个事,但是呢,So呢,不太适合做这个事。搜累的更多呢,来适合处理我们这些业务,逻辑就是我是主要来做事的,但是你现在让我去显示,我可能做不好啊,那这时候呢,我们就提到一个叫GSP,使用GSP我们可以实现一个动态的页面的展示。啊,这里边提到一个动态页面,那相比较的就是一个静态页面,静态页面就是我们一开始用这个写的这些,其实就是一个静态页面。什么叫静态页面?举个简单道理啊,比如你这个页面上,我这放的是假设咱们比如说写的那个购物车了啊,不是购物车书城了,书城里边这就是放在一本一本的书,这个呢,很显然这就是一个页面了,那这个页面呢,如果我们通过浏览器,你点邮件去可以查看它的网页源代码,这个没有了啊,你要查看它的网页源代码,发现这个书呢?呃,对应的这个代码都已经写死到这个HL当中了,这其实就是个静态的。
12:15
而事实上呢,我们发现呢,像咱们访问一个网站,这些页面中的这个数据是不是实时的都在变,比如说你首页的那些广告之类的轮播图是吧,都在变,那个呢,就是根据我们后台的这个,呃,数据呢,我们实时的给他去加载显示的,就这个页面呢,不是一开始就写死的。那要想实现这个动态的页面,就得用这个GSP来去做啊,这个大家,呃,后期呢,我们讲到的时候呢,你就知道了哈,就比如说我们这个页面中,我们想显示所有的书,那你这块呢,所有的书到底有多少本,你得看数据库中给你查到了多少本,哎,我们查到了有15本,那这块我就显示15本。那你查到了有三本,我就显示三本,而不是说呢,一开始这块呢,就固定的就是几本,哎,动态的跟据你查到这个数据的去显示相应的数据,这就叫动态的界面啊,需要用这个GP来实现,而JP呢,本质上来讲,其实也是一个sol啊,这个后边呢,就会说为什么叫本质上也是sol呢,它也实现了sol接口,其实啊好,再往下讲JT的时候呢,我们再会提到两个,一个呢叫EL表达式,一个呢叫GSTL。
13:21
那为了更好的去写Java serve配置,然后我们又引入两个新的技术,一个叫EL表达式来替换我们JSP表达式啊,另外一个呢,GSL呢,来替换GP当中呢脚本片段啊,这个咱们到时候写到了就知道了啊,用这里啊,为了让我们这个GSP呢有一个更好的一个显示是吧,更好的一个开发效率啊。然后呢,我们再提到关于绘画控制啊,这里边提到两个技术,一个叫cookie,一个叫session,正常来讲,我们说服务器端呢,获取到了一个请求啊,然后呢,服务器端又获取到一个请求,这两个请求是否来自于同一个浏览器服务器呢是不知道的,就跟说你去一个咖啡店。
14:02
啊,你点了一杯咖啡,然后呢,喝完以后呢,说诶再想来一杯水,哎,你这相当于是两次请求,点了一杯咖啡,点了一杯水,两个请求,那么对于服务员来讲,他默认情况下,他是不知道你这两个请求是不是同一个人顶的。它默认是不知道的,那但是事实上呢,我们又需要记录是不是同一个浏览器,就跟大家呢,你诶比如说你登录了这个,嗯,比如京东吧,是吧,登录完以后,诶我们已经登录上了,我现在呢,又通过一个超链接的方式,我一点击又发送了一次请求,显示了另外一个新的页面,那这个页面呢,通常我们上边呢,是不是还记录的是你当前用户。相当于就记录了你当前的这个,呃。同一个浏览器了。而不至于说呢,我们再点一个新的链接,发送了一个新的请求以后,这块呢,还是没有登录的啊,你要买这个东西还得重新登录,这个就体验很差了啊。那么为了让服务器端识别出来两次请求是不是同一个浏览器,我们就要引入这个cookie和session服务端呢?叫session客户端呢,叫cookie啊,生活中的例子呢,就是说,哎,判别是不是还是你这个人怎么办呢?给你办一张会员卡啊,你这次呢出示一些会员卡,知道是你,你下次呢还出这个会员卡哦,就知道还是你,哎就这个意思啊成那么会话控制完了以后呢,我们还要讲另外两个服务器的组件,叫filter和listener,这个呢叫过滤器,这个呢叫监听器,这三个呢,就都构成我们他CAD端的三个核心组件。
15:31
啊,过滤器顾名思义就是用来过滤数据的,就好比是大家你去坐地铁的时候,你必须得刷一下票,过那个门闸那个才行啊,你要没有钱,没有刷票,这个呢就不让你过去,这就是过滤器,就好比是你在马上要点购物车,我要支付了,这个时候呢,要支付的前一瞬间,我要过滤一下你这个请求,你登录了吗?你看没登录没登录先去登录去。哎,这就是我们过滤你这个信息啊,监听器监听用户的这个相应的一些操作啊监听器啊,后边我们到框架当中,其实也会重点讲讲框架当中的这个监听器了啊好,然后诶这块呢,提到一个叫aja,对,那这个叫这个中文叫阿贾克斯的是吧,那英文呢,这叫aja了啊这个JA的话呢,我们要想让它实现操作,我们需要提升在我们浏览器端这个JS当中啊,为了使用aja呢,也要讲这个Java script,这个JA能做什么用呢?我们举几个例子就知道了,大家呢在这个登录。
16:31
这个网站的时候就是先呢,是做一个比如注册吧,注册的时候呢,通常第一个位置就是写一下用户名,下边呢就是其他的一些选项,就当你把这个用户名写完以后,光标呢往下边这个一移。很明显后边呢,就会通常都会给你一个提示,要么你就打一个绿勾,对,就说此用户名可用是吧,要么就打个叉说用户名已被占用,一般不说违法吧。是吧,诶就是要么呢,就是你这个可以用啊,要么呢,就是说已经被占用了,就是建议你再换一个名啊,那么我们此时呢,咱们还没有点那个按钮呢啊,我点那个按钮呢,叫注册你去发送个请求,我还没有点那个按钮,这时候呢,他就告诉我了,相当于在我们光标移到这的时候,你这个呢,文本框失去焦点了,然后这个时候呢,我们就相当于是不是发送到服务器一个请求,到数据库里边查一下,看看有没有已经叫这个名的人了,对吧?诶这个技术谁做的呢?就是Ajax来做的,就是他可以实现一个异步请求。
17:34
什么叫一步呢?咱们以前讲多线程说过同步是吧,哎同步呢,就是我们,哎有几个线程的话呢,你这几个线程一个时间段之内只能有一个去做事,现在的话呢,就是你下边该写还写不影响我这块给你发一个请求啊,同时进行,相当于是啊,诶这是AX做的,哎包括呢,这个我们这个你在百度里边搜索一个数据,刚写了几个关键词,下边就给你一堆提示。是吧,这也是他可以做的,再包括呢,大家你用手机打开或者浏览器啊,看一个地图,看地图的话呢,诶呈现出来的默认的话呢,也只是你来当前你所在的一个区域这一部分的地图啊,你再通过左滑右滑,上滑下滑的方式来加载其他位置上的地图啊,这个都是HX可以做的事情啊。
18:20
好,这是它,然后呢,这个叉帽跟我们这个第去交互就。嗯,然后呢,诶后期我们服务器跟浏览器在交互传输数据的时候啊,传输数据的时候呢,诶我们呢可以用这叉帽去传送数据,那其实呢,现在的主流呢,都是杰森啊杰森杰森呢,这是我们讲web的时候最后一个要讲的内容哈,就是其实本质上来讲也是个自助串啊,你像咱们平时大家这个中午点餐的时候呢,美团外卖里边你看到的这个,诶商品的名称,商品的价格,包括这个多少人点餐了,像这些数据呢,诶我们都是从服务器呢发送数据过来的,那发送过来的是用什么格式发的,以前我们使用的是叉帽,然后呢,现在呢,主流的都用杰森呢去替换了,因为这个更轻量级。
19:10
啊,更容易去解析啊,更便捷哎,发送过来的里边呢,就包含了这些文本数据给你呈现出来啊,跟我们前端这块呢,进行一个交互啊。好,数据交换格式行,然后呢,诶,这是咱们后期web阶段呢,要做的这个书城里边相关的一些操作啊,这些操作呢,都是使用到我们刚才讲的这些所有的技术,那么我们讲的GDBC,诶属于我们服务器,你刚才登录也好,注册也好,诶需要呢基于呃这个用户呢,是不是已经存在了,或者说呢,注册的信息你给大家保存保存下来,诶我们再往后数据库里边,我们要想操作数据库就要JDDC啊,这就是我们今天呢要讲的这个内容,这个讲完以后呢,我们再学呢,就学这块内容了啊,就是整个呢,这属于我们Java web里边没有涉及到具体的一些框架了啊,因为后期我们讲的具体框架,其实都是具对我们现有的知识的一个整合行,这个呢,大家做一个了解清楚这个知识的一个全貌就行啊。
我来说两句