咱們即將學習Java web 這是經過查閱資料找到的和Java web 相關的內容。java
一:Java web的含義web
JavaWeb,是用Java技術來解決相關web互聯網領域的技術總和。web包括:web服務器和web客戶端兩部分。Java在客戶端的應用有javaapplet,不過使用得不多,Java在服務器端的應用很是的豐富,好比Servlet,JSP和第三方框架等等。Java技術對Web領域的發展注入了強大的動力。數據庫
二:Java web 應用過程當中的一些概念小程序
1、Web容器 瀏覽器
全部的程序運行都須要有一個必要的運行環境。這個環境能夠是軟件,也能夠是硬件,或者是軟件和硬件的結合。好比說Windows操做系統須要運行在硬件基礎上;Office軟件須要運行在操做系統上。而且程序與運行環境之間會有必定的數據交換,好比操做系統會將運行指令傳遞給硬件,硬件也會將指令運行結果傳遞給操做系統。Java Web程序也須要一個運行環境纔可以執行。這種運行Java Web程序的環境被稱爲Web容器,Java Web程序與Web容器之間存在數據交互。目前主要存在兩種類型的Java Web容器:一種是獨立的Java Web容器,在這種容器裏面只能運行Web程序,這種容器通常也叫作Web服務器,如Tomcat等;另外一種是與其餘Java EE容器混合在一塊兒的Web容器,Web容器負責運行Web程序,其餘容器負責運行EJB等程序,如WebLogic等。 安全
當用戶經過瀏覽器等Web客戶端軟件向服務器發出一個請求以後,首先接收到這個請求的是Web容器,Web容器會將請求信息封裝到一個HttpServletRequest類型的Java對象中,並將對象傳遞給Java Web程序。對於每一個請求,Web容器還會建立一個HttpServletResponse類型對象,該對象的做用是用來保存須要返回到瀏覽器等客戶端的內容。Java Web程序能夠從HttpServletRequest提取用戶發出的請求信息,進行適當的處理以後,將處理結果放置到HttpServletResponse中,然或由Web容器解析HttpServletResponse對象內容,並將解析結果以瀏覽器可以識別的HTML等格式返回給瀏覽器等客戶端。在這個過程當中,HttpServletRequest和HttpServletResponse就如同兩條渡船,負責在Web容器和Java Web程序之間傳遞信息。須要注意的是,這兩個對象僅存在於Web容器和Java Web程序當中,與瀏覽器沒有關係。服務器
2、Web應用 架構
Web應用,能夠認爲是Web程序的另外一個名稱。缺的的定義就是運行在Web容器當中的,可以完成完整功能的應用程序。Java Web應用由一系列編譯以後的Java類、靜態圖片、靜態HTML文件、配置文件等構成。經過Java Web應用能夠就收用戶的輸入和請求,並對請求信息進行加工處理、訪問數據庫、對用戶的請求給出迴應。開發Java Web應用程序處理須要遵照Web應用的一些特殊規範要求之外,與開發其餘類型的應用程序並無本質區別。目前Web應用主要有兩種類型:一種是以展現爲目的的Web應用,這種應用會以HTML等標記文本或者瀏覽器所能識別的媒體格式最爲請求返回內容,用戶能夠經過瀏覽器等客戶端操做這類應用。另外一類是以服務爲目的的Web應用,這類應用不提供圖形操做界面,只提供方法調用結構,好比Web服務,該類應用通常只能被其餘應用程序調用和訪問。app
3、Web元件 框架
Web元件是構成Web應用,可以對來自瀏覽器等客戶端請求作出迴應的基本單元。在Java Web應用中,所提供的Web元件有Servlet、JavaServer Pages(JSP)、JavaServer Faces(JSF)等。另外還可使用其餘類型Web應用一樣使用的內容,好比HTML文件、靜態圖片等。事實上Java Web只提供了一種Web元件元件,就是Servlet,JSP、JSF等都是基於Servlet的衍生技術。Servlet實質就是一個有特殊繼承關係要求的Java類,理解Servlet就基本上徹底理解Java Web技術了。
4、Web模塊
在Java EE技術體系中,除了Java Web之外,還包括EJB等其餘技術。每一個技術體系會運行在各自的容器當中,不一樣的部分組合在一塊兒構成完整的Java EE應用,每一個部分根據本身的特色被稱爲Java Web模塊或者EJB模塊。之因此把他們稱爲模塊,是由於但願Java EE應用不一樣部分能像積木同樣組合出更大、更復雜的應用出來,而且每一個部分保證其獨立性。不一樣的模塊都有本身特定的目錄結構要求。:
◆應用文檔根目錄。改目錄是Java Web模塊的最上層目錄,組成Web模塊的全部Web元件以及配置文件等都包含在該目錄或者子目錄下。在改目錄下能夠直接存放HTML文件,圖片文件等。
三:所需技術及其做用:
1. HTML
HTML(Hypertext Markup Language)即超文本連接標示語言,使用它能夠設計靜態網頁。
2. CSS
CSS(Cascading Style Sheets)即層疊樣式表,簡稱"樣式表",是一種美化網頁的技術,主要完成字體、顏色、佈局等方面的各類設置。
在HTML基礎上,使用CSS不只可以統1、高效地組織頁面上的元素,還可使頁面
具備多樣的外觀。
3. Javascript
Javascript是一種簡單的腳本語言,在瀏覽器中直接運行,無須服務器端的支持。這種腳本語言能夠直接嵌套在HTML代碼中,它響應一系列的事件。當一個Javascript函數響應的動做發生時,瀏覽器就會執行對應的Javascript代碼,從而在瀏覽器端實現與客戶的交互。
Javascript增長了HTML網頁的互動性,它能夠在瀏覽器端實現一系列動態的功能,僅僅依靠瀏覽器就能夠完成一些與用戶的互動。
4. JSP
JSP頁面由HTML代碼和嵌入其中的Java代碼組成。在頁面被客戶端請求後,Web服務器對Java代碼進行處理,而後將生成的HTML頁面返回客戶端的瀏覽器。JSP頁面一通常包含JSP指令、JSP腳本元素、Jsp標準動做以及JSP內置對象。
5. Servlet
Servlet(Java服務器小程序)!是用Java語言編寫的服務器端程序,是由服務器端用和執行的。它能夠處理客戶端傳來的H丁IP請求,並返回一個響應。它是按照Servlet自身規範設計的一個Java類,具備可移植性、功能強大、安全、繼承、模塊化和可擴展性好等特色。
6. JavaBean
JavaBean用Java語言編寫並遵循必定規範的類,該類的一個實例稱爲JavaBean,簡稱Bean.JavaBean能夠被JSP引用,也能夠被Servlet引用。
7. JDBC
JDBC Oava Database Connectivity,數據庫訪問接口)是Java Web應用程序開發中最主要的ApI之一,任何應用程序老是須要訪問數據庫。它使數據庫開發人員可以用標準的Java APl編寫數據庫應用程序。JDBC APl主要用來鏈接數據庫和直接調用SQL命令執行各類SQL語句。
8. XML
XML(extensible Markup Language,可擴展的標記語言),在Java Web應用程序中,XML主要用於描述配置信息。Servlet、Struts2以及Hibernate框架都須要配置文件,它們的配置文件都是XML格式的。
9. Struts2
Struts2框架,提供了一種基於MVC體系結構的工程序的開發方法,具備組件模塊化、靈活性和重用性等優勢,使基於MVC模式的程序結構更加清晰,同時也簡化了Web應用程序的開發,是目前最經常使用的開發框架。
10. Hibernate
Hibemate是一個面向Java環境的對象/關係數據庫映射工具,即ORM(Object-Relation Mapping對象——關係映射)工具。它對JDBC API進行了封裝,負責Java對象的持久化,在分層的軟件架構中位於下持久化層,封裝了全部數據訪問細節,使業務邏輯層能夠專一於實現業務邏輯。