9.1概述
在class文件格式和執(zhí)行引擎這部分內(nèi)容中搓茬,用戶程序能直接影響的并不多犹赖,Class文件以何種形式存儲(chǔ),類型何時(shí)加載卷仑、如何連接峻村,以及虛擬機(jī)如何執(zhí)行字節(jié)碼指令都由虛擬機(jī)直接控制,用戶無(wú)發(fā)改變锡凝;能夠通過(guò)程序控制的粘昨,主要是字節(jié)碼生成和類加載器兩部分
9.2案例分析
9.2.1Tomcat:正統(tǒng)的類加載架構(gòu)
一個(gè)功能健全的web服務(wù)器需要解決的問(wèn)題
同一個(gè)web服務(wù)器上的不同應(yīng)用程序可以實(shí)現(xiàn)相互隔離
同一個(gè)web服務(wù)器上的不同應(yīng)用程序可以實(shí)現(xiàn)共享
服務(wù)器盡量保證自身安全不受部署應(yīng)用程序的影響
支持jsp應(yīng)用的web服務(wù)器,大多數(shù)需要支持HotSwap功能
9.2.2:OSGI:靈活的類加載架構(gòu)
OSGI(Open Service Gateway Initiative):基于Java語(yǔ)言的動(dòng)態(tài)模塊化規(guī)范
典型應(yīng)用:Eclipse Idea
OSGI的每個(gè)模塊成為Bundle
9.2.3字節(jié)碼生成和動(dòng)態(tài)代理實(shí)現(xiàn)
9.2.4Retrotranslator:跨越JDK版本
9.3自己動(dòng)手實(shí)現(xiàn)遠(yuǎn)程執(zhí)行代碼
9.3.1目標(biāo)
9.3.2思路
9.3.3實(shí)現(xiàn)
9.3.4驗(yàn)證
參考文獻(xiàn):
[1] 深入理解Java虛擬機(jī) 第二版 --周志明