更新時間:2019-07-17 11:35:09 來源:動力節(jié)點 瀏覽3084次
掌握Java基礎如何學習Java框架?Java各種框架涉及的知識點太多了,項目中用到了倒是會用,但是對于原理則一臉懵比。甚至連為什么要用框架也一知半解,最基本的servlet也知道的不深入,對它在其中發(fā)揮的作用更是了解的暈暈乎乎的。就有一種站在山腳看哪哪都是山的迷茫感,真心難受。
改正一下學習方式,站在山頂看一下,最起碼知道我們?yōu)槭裁匆眠@些框架?沒有這些框架之前我們是怎么做的?框架封裝了那些重要的基礎操作?還需要學習哪些JavaWeb基礎知識,這些知識在框架中的地位如何?是如何工作的?然后再一點點攻克細節(jié)!需要重視的是,前端工具也越來越強大了,不能停止學習,不能狹隘!
•JavaWeb發(fā)展史
•不同框架的作用及優(yōu)點(Spring,MVC框架,ORM框架)
•其中必須要掌握的基礎知識(工作原理,框架如何封裝的)
•框架的更多使用與原理的學習
JavaWeb發(fā)展史
1.web的出現(xiàn):
最初的web在1991年出現(xiàn),目的是為了實現(xiàn)計算機之間的信息共享與傳遞的,即TCP/IP協(xié)議將計算機連接在一起,而Web則在其之上,進一步將計算機的信息資源連接在一起。
Web設計初衷是一個靜態(tài)信息資源發(fā)布媒介,通過超文本標記語言(HTML)描述信息資源,通過統(tǒng)一資源標識符(URL)定位信息資源,通過超文本轉移協(xié)議(HTTP)請求信息資源?!疽莆誻eb必須理解,這是重點基礎】
2.純靜態(tài)頁面:
最初的時候,瀏覽器端展示的只有靜態(tài)的文本或圖像信息。實現(xiàn)原理就是將靜態(tài)的網(wǎng)頁存儲在服務器中的一個特定目錄的文件下面,然后接受到客戶端的請求時,去該目錄下尋找對應的HTML文件返回。
3.動態(tài)內(nèi)容的出現(xiàn)--CGI:
為滿足人們對動態(tài)內(nèi)容的需求,出現(xiàn)了CGI【likeservlet】。CGI定義了Web服務器與外部應用程序之間的通信接口標準,因此程序員可以通過編寫需要的符合CGI規(guī)范的代碼,接受web服務器發(fā)來的請求,并為Web請求生成動態(tài)內(nèi)容(執(zhí)行動態(tài)邏輯,輸出結合了動態(tài)處理結果的靜態(tài)的HTML內(nèi)容-->大量HTML代碼)返回給服務器,進而返回給用戶。
而CGI對每個請求都會啟動一個進程來處理,因此性能上的擴展性不高。而編寫CGI程序當時主要是Perl和C等語言,會在程序中輸出大片的HTML字符串,可讀性和維護性是個大問題?!具@樣代碼看起來很糟糕】
為了處理更復雜的應用,一種方法是把HTML返回中固定的部分存起來,即一個返回的HTML模板,為動態(tài)的結果預留位置,Web請求處理的時候,程序先處理動態(tài)請求得到結果,再把模版讀入進來,把結果填充到預留位置中,形成最終返回的HTML頁面?!靖杏X就是將CGI時期的大片HTML代碼封裝成模板了而已,我們?nèi)匀皇切枰止討B(tài)執(zhí)行結果嵌入HTML中】
4.Web編程腳本語言--PHP/JSP/ASP:
在上面說到的模板方法中,仍然是需要繁瑣的人工編寫代碼嵌入HTML模板中,PHP(1994)的出現(xiàn)就代替了這種人工操作。PHP可以把程序(動態(tài)內(nèi)容)嵌入到HTML(模版)中去執(zhí)行,執(zhí)行過程為:web服務器(Apache)接收到用戶請求,判斷該請求是php請求后,交給PHP執(zhí)行引擎去執(zhí)行,將執(zhí)行結果即一個HTML頁面,返回給服務器,進而返回給用戶。
而后,出現(xiàn)了ASP(1996)和JSP(1998),本質(zhì)上也都可以看成是一種支持某種腳本語言編程(分別是VB和Java)的模版引擎。并且在1996年時,W3C發(fā)布了CSS1.0規(guī)范。CSS允許開發(fā)者用外聯(lián)的樣式表來取代難以維護的內(nèi)嵌樣式,而不需要逐個去修改HTML元素,這讓HTML頁面更加容易創(chuàng)建和維護。
此時,有了這些腳本語言,搭配上后端的數(shù)據(jù)庫技術,Web已經(jīng)從一個靜態(tài)資源分享媒介真正變?yōu)榱艘粋€分布式的計算平臺了?!具@樣看來,開發(fā)web項目并不局限于某種語言,只要了解實現(xiàn)原理,用啥語言都OK的?!?/p>
5.分布式企業(yè)計算平臺--J2EE/.Net:
隨著Web的廣泛應用時,在分布式、安全性、事務性等方面的要求催生了J2EE(現(xiàn)在已更名為JavaEE)平臺在1999年的誕生,從那時開始為企業(yè)應用提供支撐平臺的各種應用服務器也開始出現(xiàn)了?!具@里需要了解那時的的javaEE是如何實現(xiàn)的,又是如何在分布式、安全性、事務性上體現(xiàn)的。】
JavaEE中,定義了其核心規(guī)范,包括:JavaServlet、JavaServerPages(JSP)和EnterpriseJavaBean(EJB),Servlet和JSP是運行在服務器端的Web組件,EJB運行在服務器端的業(yè)務組件,是一種分布式組件技術。【EJB的相關知識了解】
6.各種Java框架--全棧、MVC、ORM:
面對及其復雜的web項目,為了提高項目的可維護性與可擴展性,簡化開發(fā)人員的工作,越來越多的框架被設計實現(xiàn)出來,并且得到廣泛的應用。
框架包括全??蚣苋鏢pring,MVC框架如structs與SpringMVC,ORM框架如Hibernate與Mybatis。它們在web項目中有各自的分工,通過Spring將他們整合起來。
相關閱讀