Ik ben meerdere keren gesteld deze vraag. Onlangs stelde Xyling de zelfde vraag in zijn blog. Zo dacht ik een eenvoudige verklaring in orde kan zijn.

Om een klasse leeg te maken moet u een douane tot stand brengen classloader en de klasse laden gebruikend het. De kater doet het en doet dat JRun. U kunt in de code van de Kater bij een voorbeeld kijken.

Nadat u met de klasse wordt gedaan moet u alle verwijzingen naar de klasse evenals naar de klassenlader vrijgeven door de variabelen opnieuw toe te wijzen of nietig te verklaren hen te plaatsen.

Dan of wacht op System.gc () om de klasse leeg te maken of u roept het direct binnen een lijn tot niet meer bytes kunnen worden bevrijd. nochtans normaal roepend doet het tweemaal de truc.

Nota: U kunt geen één enkele klasse leegmaken. U moet classloader samen met het leegmaken. Zo duidelijk is het Systeem classloader niet geschikt voor deze taak.

Nota 2: Zo Worden de jsp- pagina's herladen dynamisch everytime u veranderen de code. En ja is dat waarom de eerste keer veel duurt langer om verdere tijden dan te laden.