如何学习各种框架,如何学习javaweb

     java各种框架涉及的知识点太多了,项目中用到了倒是会用,但是对于原理则一脸懵比。甚至连为什么要用框架也一知半解,最基本的servlet也知道的不深入,对它在其中发挥的作用更是了解的晕晕乎乎的。就有一种站在山脚看哪哪都是山的迷茫感,真心难受。
     改正一下学习方式,站在山顶看一下,最起码知道我们为什么要用这些框架?没有这些框架之前我们是怎么做的?框架封装了那些重要的基础操作?还需要学习哪些javaWeb基础知识,这些知识在框架中的地位如何?是如何工作的?然后再一点点攻克细节!需要重视的是,前端工具也越来越强大了,不能停止学习,不能狭隘!

     从以下几个方面入手(还不太确定):
  • JavaWeb发展史
  • 不同框架的作用及优点(Spring,MVC框架,ORM框架)
  • 其中必须要掌握的基础知识(工作原理,框架如何封装的)
  • 框架的更多使用与原理的学习

JavaWeb发展史

1.web的出现
最初的web在1991年出现,目的是为了实现计算机之间的信息共享与传递的,即TCP/IP协议将计算机连接在一起,而Web则在其之上,进一步将计算机的信息资源连接在一起。
Web设计初衷是一个静态信息资源发布媒介,通过超文本标记语言(HTML)描述信息资源,通过统一资源标识符(URL)定位信息资源,通过超文本转移协议(HTTP)请求信息资源。【要掌握web必须理解,这是重点基础】

2.纯静态页面
最初的时候,浏览器端展示的只有静态的文本或图像信息。实现原理就是将静态的网页存储在服务器中的一个特定目录的文件下面,然后接受到客户端的请求时,去该目录下寻找对应的HTML文件返回。

3.动态内容的出现--CGI
为满足人们对动态内容的需求,出现了CGI【like servlet】。CGI定义了Web服务器与外部应用程序之间的通信接口标准,因此程序员可以通过编写需要的符合CGI规范的代码,接受web服务器发来的请求,并为Web请求生成动态内容(执行动态逻辑,输出结合了动态处理结果的静态的HTML内容-->大量HTML代码)返回给服务器,进而返回给用户。
而CGI对每个请求都会启动一个进程来处理,因此性能上的扩展性不高。而编写CGI程序当时主要是Perl和C等语言,会在程序中输出大片的HTML字符串,可读性和维护性是个大问题。【这样代码看起来很糟糕】
为了处理更复杂的应用,一种方法是把HTML返回中固定的部分存起来,即一个返回的HTML模板,为动态的结果预留位置,Web请求处理的时候,程序先处理动态请求得到结果,再把模版读入进来,把结果填充到预留位置中,形成最终返回的HTML页面。【感觉就是将CGI时期的大片HTML代码封装成模板了而已,我们仍然是需要手工将动态执行结果嵌入HTML中】

4.Web编程脚本语言--PHP/JSP/ASP
在上面说到的模板方法中,仍然是需要繁琐的人工编写代码嵌入HTML模板中,PHP(1994)的出现就代替了这种人工操作。PHP可以把程序(动态内容)嵌入到HTML(模版)中去执行,执行过程为:web服务器(Apache)接收到用户请求,判断该请求是php请求后,交给PHP执行引擎去执行,将执行结果即一个HTML页面,返回给服务器,进而返回给用户。
而后,出现了ASP(1996)和JSP(1998),本质上也都可以看成是一种支持某种脚本语言编程(分别是VB和Java)的模版引擎。并且在1996年时,W3C发布了CSS1.0规范。CSS允许开发者用外联的样式表来取代难以维护的内嵌样式,而不需要逐个去修改HTML元素,这让HTML页面更加容易创建和维护。
此时,有了这些脚本语言,搭配上后端的数据库技术,Web已经从一个静态资源分享媒介真正变为了一个分布式的计算平台了。【这样看来,开发web项目并不局限于某种语言,只要了解实现原理,用啥语言都OK的。】

5.分布式企业计算平台--J2EE/.Net
随着Web的广泛应用时,在分布式、安全性、事务性等方面的要求催生了J2EE(现在已更名为Java EE)平台在1999年的诞生,从那时开始为企业应用提供支撑平台的各种应用服务器也开始出现了。【这里需要了解那时的的javaEE是如何实现的,又是如何在分布式、安全性、事务性上体现的。】
Java EE中,定义了其核心规范,包括:Java Servlet、Java Server Pages (JSP)和Enterprise Java Bean (EJB ),Servlet和JSP是运行在服务器端的Web组件,EJB运行在服务器端的业务组件,是一种分布式组件技术。【EJB的相关知识了解】

6.各种框架--全栈、MVC、ORM
面对及其复杂的web项目,为了提高项目的可维护性与可扩展性,简化开发人员的工作,越来越多的框架被设计实现出来,并且得到广泛的应用。
框架包括全栈框架如Spring,MVC框架如structs与SpringMVC,ORM框架如Hibernate与Mybatis。它们在web项目中有各自的分工,通过Spring将他们整合起来。

(此外,前端技术也在不断进步,还需学习再加进来)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,045评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,114评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,120评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,902评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,828评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,132评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,590评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,258评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,408评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,335评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,385评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,068评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,660评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,747评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,967评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,406评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,970评论 2 341

推荐阅读更多精彩内容