Web開發主要包括前端開發以及後端開發前端
最基礎的用Servlet + JSP,用這兩個就能夠實現Web開發,只是代碼量比較大。java
前端開發主要是用HTML + CSS + JavaScript , 能夠再學一些前端框架。前端網頁展現也能夠用JSP。或者JSP與JavaScript結合來展現。程序員
後端開發主要是服務器三大框架 SpringMVC/Struts+Spring+Hibernate/Mybits等。web
1、後端開發spring
1. 概念:數據庫
SSM框架: SpringMVC + Spring + Mybits編程
SSH框架: Struts+ Spring + Hibernate後端
其餘如spring boot、spring cloud等瀏覽器
三大框架:Struts+Hibernate+Spring安全
java三大框架主要用來作WEN應用。
1)Struts主要負責表示層的顯示
2)Spring利用它的IOC和AOP來處理控制業務(負責對數據庫的操做)
3)Hibernate主要是數據持久化到數據庫。
再用jsp的servlet作網頁開發的時候有個web.xml的映射文件,裏面有一個mapping的標籤就是用來作文件映射的。當你在瀏覽器上輸入URL得知的時候,文件就會根據你寫的名稱對應到一個JAVA文件,根據java文件裏編寫的內容顯示在瀏覽器上,就是一個網頁。
一 .Struts框架:
struts是開源軟件。使用Struts的目的是爲了幫助咱們減小在運用MVC設計模型來開發Web應用的時間。若是咱們想混合使用Servlets和JSP的優勢來創建可擴展的應用,struts是一個不錯的選擇。
1.流程:服務器啓動後,根據web.xml加載ActionServlet讀取struts-config.xml文件內容到內存。
2.架構:Struts對Model,View和Controller都提供了對應的組件。ActionServlet,這個類是Struts的核心控制器,負責攔截來自用戶的請求。
Model部分:由JavaBean組成,ActionForm用於封裝用戶的請求參數,封裝成ActionForm對象,該對象被ActionServlet轉發給Action,Action根據ActionFrom裏面的請求參數處理用戶的請求。JavaBean則封裝了底層的業務邏輯,包括數據庫訪問等。
View部分:該部分採用JSP實現。Struts提供了豐富的標籤庫,經過標籤庫能夠減小腳本的使用,自定義的標籤庫能夠實現與Model的有效交互,並增長了現實功能。對應上圖的JSP部分。
Controller組件:Controller組件有兩個部分組成——系統核心控制器,業務邏輯控制器。 系統核心控制器,對應上圖的ActionServlet。該控制器由Struts框架提供,繼承HttpServlet類,所以能夠配置成標註的Servlet。該控制器負責攔截全部的HTTP請求,而後根據用戶請求決定是否要轉給業務邏輯控制器。業務邏輯控制器,負責處理用戶請求,自己不具有處理能力,而是調用Model來完成處理。對應Action部分。
二.Spring框架
Spring是一個解決了許多在J2EE開發中常見的的問題的強大框架。Springle提供了管理業務對象的一致方法而且鼓勵了注入對接口編程而不是對類變成的好習慣。Spring的架構基礎是基於使用JavaBean屬性的Inversion of Control 容器。然而Spring在使用IoC容器做爲構建玩關注全部架構層層的完整解決方案方面是獨一無二的。Spring提供了惟一的數據管理抽象包括簡單和有效率的JDBC框架,極大的改進了效率而且減小了可能的錯誤。Spring的數據訪問架構還集成了Hibernate和其餘O/R mapping 解決方案。
三.Hibernate框架
Hibernate 是一個開源代碼的對象關係映射框架,對JDBC驚醒了費城輕量級的的對象封裝,使得Java程序員能夠爲所欲爲的使用對象變成思惟來操做數據庫。Hebernate能夠應用在任何使用JDBC的場合,既能夠在java的客戶端程序使用,也能夠在Servlet/JSP的Web應用中使用最具革命意義的事,Hibernate能夠在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任
Hibernate的核心接口一共有5個,分別爲:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發中都會用到。經過這些接口,不只能夠對持久化對象進行存取,還可以進行事務控制。下面對這五個核心接口分別加以介紹。
1.Session接口:負責執行被持久化對象的CRUD操做(CRUD的任務是完成與數據庫的交流,包含了不少常見的SQL語句。)。但須要注意的是Session對象是非線程安全的。同時,Hibernate的session不一樣於JSP應用中的HttpSession。這裏當使用session這個術語時,其實指的是Hibernate中的session,而之後會將HttpSession對象稱爲用戶session。
2.SessionFactory接口:負責初始化Hibernate。它充當數據存儲源的代理,並負責建立Session對象。這裏用到了工廠模式。須要注意的是SessionFactory並非輕量級的,由於通常狀況下,一個項目一般只須要一個SessionFactory就夠,當須要操做多個數據庫時,能夠爲每一個數據庫指定一個SessionFactory。
3.Configuration接口:負責配置並啓動Hibernate,建立SessionFactory對象。在Hibernate的啓動的過程當中,Configuration類的實例首先定位映射文檔位置、讀取配置,而後建立SessionFactory對象。
4.Transaction接口:負責事務相關的操做。它是可選的,開發人員也能夠設計編寫本身的底層事務處理代碼。
5.Query和Criteria接口:負責執行各類數據庫查詢。它可使用HQL語言或SQL語句兩種表達方式。
2. 框架模板搭建:
2、前端開發
HTML + CSS + JavaScript
HTML用於描述網頁內容; CSS用於描述網頁樣式;JavaScript用於描述網頁行爲。
1. 客戶端 JavaScript