tomcat部署多個(gè)web項(xiàng)目 類加載機(jī)制,不是類加載機(jī)制的幾個(gè)過(guò)程?
類加載機(jī)制,不是類加載機(jī)制的幾個(gè)過(guò)程?A:這是Java核心的一個(gè)難題。我將對(duì)這個(gè)問(wèn)題給出一個(gè)簡(jiǎn)短的回答,而不是深入討論:1。明確編譯和操作的概念:編譯是javac的過(guò)程,javac負(fù)責(zé)編譯。Java文
類加載機(jī)制,不是類加載機(jī)制的幾個(gè)過(guò)程?
A:這是Java核心的一個(gè)難題。我將對(duì)這個(gè)問(wèn)題給出一個(gè)簡(jiǎn)短的回答,而不是深入討論:
1。明確編譯和操作的概念:編譯是javac的過(guò)程,javac負(fù)責(zé)編譯。Java文件。類文件,主要用于類型和格式檢查并編譯成字節(jié)碼文件,而加載則是指Java*加載。類文件進(jìn)入內(nèi)存解釋執(zhí)行,也就是說(shuō),它在運(yùn)行時(shí)會(huì)被加載。
2. 類的加載時(shí)間肯定是在運(yùn)行時(shí),但并不是一次全部加載。相反,它是根據(jù)需要?jiǎng)討B(tài)加載的,依賴于反射。一般來(lái)說(shuō),一個(gè)類只加載一次,然后從JVM中類實(shí)例的緩存中獲取。無(wú)論誰(shuí)使用它都可以得到它,它不會(huì)加載。文件系統(tǒng)中的類文件。
理解1到2點(diǎn)就足夠了。這需要一些時(shí)間來(lái)理解。
tomcat啟動(dòng)原理?
Tomcat服務(wù)器的工作原理概括如下:1。Tomcat是在JVM中運(yùn)行的進(jìn)程。顧名思義,它被定義為“中間件”,是Java項(xiàng)目和JVM之間的中間容器。
2. Web項(xiàng)目的本質(zhì)是大量的資源文件和方法。web項(xiàng)目沒(méi)有entry方法(即main方法),這意味著web項(xiàng)目中的方法不會(huì)自動(dòng)運(yùn)行。
將web項(xiàng)目部署到Tomcat的webapp中的目的非常明確,即期望Tomcat調(diào)用編寫的方法來(lái)為客戶端返回所需的資源和數(shù)據(jù)。
3. Tomcat可以運(yùn)行并調(diào)用編寫的方法。那么,Tomcat必須有一個(gè)main方法。對(duì)于tomcat來(lái)說(shuō),它不知道用戶將擁有什么樣的方法。這些只有在項(xiàng)目部署到webapp之后才能確定。
因此,Tomcat使用java反射來(lái)實(shí)現(xiàn)類的動(dòng)態(tài)加載、實(shí)例化、獲取方法和調(diào)用方法。但是部署在Tomcat中的web項(xiàng)目必須根據(jù)指定的接口編寫才能被調(diào)用。