# JDK JRE 與 JVM
在JAVA的學習中,我們絕對離不開JDK\JRE\JVM,那么它們都是什么呢,它們之間是否存在相關的關系,如果存在,三者間的關系又是什么呢?
下圖如實的描述了三者關的關系:

# JDK
JDK = Java Development Kits 即:JAVA開發工具包。
我們可以把編寫代碼比做是制造汽車。JDK則相當于汽車制造中的機器人。
JDK是開發JVAV程序的必備工具包,沒有JDK,就開發不了JAVA應用程序。JRE是JDK的一部分。比如在開發過程中,用于調試的斷點,就是JDK提供的。比如將我們編寫的hello.java源程序編譯為hello.class可執行程序也是JDK提供的功能的一部門。
# JRE
JRE JAVA Runtime Environment. JAVA運行環境
一個新的型號的汽車生產,需要提前在實驗場進行各種實驗,所以每家汽車企業都有實驗場地。而JAVA編寫后的實驗場地即是JRE.
如果JAVA開發的軟件是輛汽車,那么JRE則是汽車運行中必需的『公路』。
JRE是JDK一部分,可以單獨存在并單獨提供下載。
hello.class應用程序可以運行在jre中。所以如果我們僅僅是搭建服務器來運行編譯后的java程序 ,而并不開發。在那臺機器上安裝JRE即可。
# JVM
Java Virtual Machine JAVA 虛擬機。汽車需要的僅僅是平坦的公路,至于是把公路修建在平原上,還是高山上,或是隧道中,這則是JVM的事情。JVM使用JAVA可以在平原、高山、隧道的各種環境下運轉。
如果沒有見山開水,見水搭橋的JVM,就不會有平坦的公路JRE,如果沒有JRE,汽車就只能停留在車庫中,如果沒有JDK,就不可以生產出車庫中的汽車。
JVM又是JRE的一部分。它負責在不同的平臺下執行hello.class應用程序。正是由于它的功能,決定了JVM上面對接JAVA程序,下面對接操作系統。所以不同的操作系統下,需要安裝不同的JVM。

# 環境變量
過記得我們前面在使用PHP開發時候的命名空間吧。命名空間,實際上觸決的是,你在自己的班級中找隔壁班級的小明來幫忙的問題。
除了上述方法,我們還可以使用一個環境變量來解決。如果你把小明注冊到環境變量中,那么不管你在做任意的位置上找小明來幫忙,都不需要在提前使用命名空間引入了。
將小明注冊到環境變量:在系統的任意位置均可呼叫小明。
將夢云智注冊到環境變量:在系統中的任意位置均可呼叫夢云智的成員。
將java.exe所在的文件夾注冊到環境變量,在系統中的任意位置均可以執行這個文件夾中的EXE可執行文件。
- README
- 第一章:準備
- 第二章:Hello World!
- 第一節:查看工程文件
- 第二節:JDK、JRE與環境變量
- 第三節:index.jsp
- 第三章:Hello Struts
- 第一節:Web.xml
- 第二節:單入口
- 第三節:Hello Struts
- 第四節:觸發C層
- 第四章:建立數據表
- 第一節:建立實體類
- 第二節:測試一
- 第三節:測試二
- 第四節:引入Hibernate
- 第五節:配置Hibernate
- 第六節:建立連接
- 第七節:實體類映射數據表
- 第八節:完善數據表
- 第五章:教師管理
- 第一節:增加數據--add
- 第二節:增加數據--save
- 1 獲取傳入數據數據
- 2 數據寫入測試
- 3 對接C層
- 第三節:數據列表
- 1 獲取數據
- 2 重構代碼
- 3 C層對接--初始化
- 4 C層添加數據
- 5 V層顯示數據
- 6 獲取數據庫中數據
- 7 顯示性別
- 8 分頁
- 9 條件查詢
- 第四節:修改數據
- 1 edit
- 2 update
- 第五節:刪除數據
- 第六節:總結
- 第六章:重構C層
- 第一節:繼承ActionSupport類
- 第二節:數據驗證
- 第七章:前臺分離(前臺)
- 第一節:環境搭建
- 第二節:運行環境
- 第三節:共享開發環境
- 第四節:生產環境
- 第八章:前臺開發(前臺)
- 第一節:本地化
- 第二節:教師列表
- 1 引入M層
- 2 模擬后臺返回數據
- 3 C與M對接
- 4 C與V對接
- 第九章:前后臺對接(前后臺)
- 第一節:后臺輸出json(后臺)
- 第二節:對接前臺(全棧)
- 第二節:對接API(前臺)
- 第二節:跨域請求(后臺)
- 第三節:重構代碼(前臺)
- 第十章:重構后臺M層
- 第一節:數據訪問DAO層
- 第二節:項目整體重構
- 第十一章:用戶登陸(前后臺)
- 第一節:制定規范
- 第二節:定制測試用例
- 第三節:后臺輸入測試代碼(后臺)
- 第四節:postman(后臺)
- 第五節:新建用戶登陸模塊(前臺)
- 第六節:代碼重構(前臺)
- 第十二章:班級管理(前后臺)
- 第一節:班級列表
- 1 原型開發
- 2 制定規范
- 3 后臺對接開發
- 4 前臺對接開發
- 第二節:Add
- 1 原型開發
- 2 制定規范
- 3 后臺對接開發
- 4 前臺對接開發
- 第三節:Save
- 1 制定規范
- 2 后臺對接開發
- 3 前臺對接開發
- 第四節:Edit
- 1 原型開發
- 2 制定規范
- 3 后臺對接開發
- 4 前臺對接開發
- 第五節:Update
- 1 制定規范
- 2 后臺對接開發
- 3 前臺對接開發
- 第六節:Delete
- 1 制定規范
- 2 后臺對接開發
- 3 前臺對接開發
- 第七節:小結
- 第十三章:班級管理(API)
- 第一節:ER圖
- 第二節:create
- 1 實體層
- 2 dao層
- 3 service(server)層
- 4 action層
- 第三節:ManyToOne
- 第四節:Read
- 1 service(server)層
- 2 action層
- 第五節:update
- 1 service(server)層
- 2 action層
- 第六節:update
- 第十四章:重構服務層