2020.2.12

首先给JAVA语言在实际项目中到底是干什么的做一个介绍:
java这门语言多数时间被使用在WEB服务器端。举例子说现在咱们要做一个网站,我们能看到的页面是客户端,而逻辑处理(比方说X宝上面买东西需要先登录,这个逻辑)和数据存储(用户的信息,买什么东西的信息等)则是在服务器端。也就是说java负责不是页面,而是逻辑和数据存储(从这个前提下,我们才能继续学习,而不是学了好久发现做出的页面好丑,就回过头来说java做网站不好balabala的~~)。
这个东西是网上的技术视频和帖子论坛都没有说明的,我认为也是初学者必须先了解的。
然后接着说说我们想打开某个网站,从开始到结束大概的流程是什么,然后分析出每个流程应该如何实现,一步一步分解各个环节,在分析过程中就知道了该学习什么技术。这个东西花不了多少时间,而且对整个WEB有一个具体的认知。从具体流程中了解需要学习的技术,而不是听别人说某某技术好啊,要赶快学啊,学来学去到最后不知道它是做什么的,亦或是发现自己学了它之后没有什么用。
当你掌握了整个流程,并且能够独自实现整个流程的时候,你可能会发现其中某个环节的欠缺或是不足。这时候一是上网搜索或是问其他人,有没有更好的解决方案;二就是看看能不能利用自己已经掌握的技术和经验来解决它。(只是一个提高技术的方法)
好的,从打开浏览器开始说起。用户打开一个浏览器,输入网址,按下回车。按下回车之后,浏览器会发送出一个请求到域名服务商,然后域名服务商分析你发送给它的域名,告诉你需要访问的是哪台服务器,当请求到达服务器时,服务器会对这个请求作出(逻辑、业务)处理,然后返回响应信息到你的电脑,浏览器取得了这些信息之后,会分析这些信息,然后渲染出一个页面,这才呈现在面前的显示器上。在这个过程中可能会出现多次请求,就是循环这个过程而已。
好的我们大概看看这个流程中我们需要负责的,能控制的是哪些部分,哪些部分是我们控制不到的。哪些部分是已经有了良好的解决方案的,我们不需要关注的。

1.从打开浏览器一直到请求发送到域名服务商,这些部分我们无法控制,都是操作系统和浏览器的活。在域名商这个环节上我们暂时不关注,客户会去注册域名的,如果客户不管也是其它运维的骚年们去配置的。大概做法就是找个靠谱的域名服务商,充钱,然后配置当用户输入什么域名会将请求转发到哪台IP(服务器)上。(本地开发使用的localhost不属于这个步骤,操作系统会将它直接映射到本地)
2.从服务器接收到请求开始是我们的活了。请求发送到服务器上,首先会被具体的容器接收,比如最常用的tomcat。tomcat接收到请求之后会将请求分配到我们的应用中(到了我们写的java代码啦)。这个过程是tomcat已经做好的,我们需要学习如何配置和使用tomcat将请求传递到我们的应用中(这就是一个需要学习的地方)。
3.当应用获取请求后,我们首先要知道是哪些java类的哪一个方法来处理它,这里可能需要学习servlet或是springmvc来将请求分配到具体的类中(servlet和springMVC又是需要学习的点)。
4.当具体的某一个方法被调用,我们可能会将它存储到数据库中,将信息保存下来,这时候会用到mybatis(又是一个学习点)。
5.我们可能还想将这些信息经过处理后放到一个缓存中,这时候可能需要学习session的用法(又是一个学习点)。
6.经过后台的一个或是多个方法处理之后(中间可能会根据业务不同,使用多个技术),直到最后响应给用户的浏览器,浏览器才会将页面渲染到显示器中。

了解了这个流程之后,才是学习技术的开始。(流程只是大概,不是全部)

接下来就是学习一个又一个的技术,将这个流程完善、优化的过程。一切一切的前提是知道我们在做什么。不要盲目的去学习,而是有目的的学习(好现实啊)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值