Java processförbättring är ett verktyg som automatiskt lägger till kod för persistenta klasser . Byte koder som genereras av Java kompilator använder förstärkare post- processen . Dessutom har några ändringar gjorts av bytekod kompatibilitet med Java felsökare . Detta bevarar radnummer i stack spår . Efter förstärkaren adderar gränssnitt , fält och metoder till de ihållande klasserna , lagrar förstärkaren informationen i ett datalager . Byggtid
Användare kan begära förstärkare vid byggtiden genom en Java- klass , och förstärkaren kommer att acceptera den vanliga uppsättningen av kommandoraden argument . Konfigurationen ramverket använder olika uppsättningar flaggor för att ställa in parametrar , inklusive möjligheten att lägga till ett skyddat nej - argument konstruktor till en ihållande klass . Om ett argument inte matas via förstärkaren , kommer argumentet köras på klasserna i ihållande klassen listan . Argumentet måste antingen använda det fullständiga namnet på en klass , det . Java -fil för en klass eller . Klassfilen av en klass .
Deployment
Java EE 5 använder krokar för att automatiskt förbättra JPA enheter när de sätts in i en container . Den OpenJPA förstärker de enheter vid körning när du använder en kompatibel server . Dessutom erkänner OpenJPA och sedan korrigerar eller hoppar någon tilläggsprodukt konflikter .
Runtime
Java agent i OpenJPA automatiskt förbättrar ihållande klasser under inläsningen . Dessutom dessa agenter använder krokar för att fånga klasser som har uthållighet metadata innan de laddas . Processen att söka efter metadata är tidsödande och kommer att sakta ner initieringen av ansökan. Användare kan dock påskynda denna process genom att deklarera en ihållande klass lista . I detta fall kommer OpenJPA bara söka inom den angivna listan för metadata .
Metadata
När användarna definethe metadata baserade på klassdeklarationen , kommer förstärkaren generera sin egen metadata . Metadata blir då en del av varje ihållande klass som ett statiskt fält när de läggs under förbättring . Olika typer av statiska fält betyder också klass - nivå metadata . Användarna kan enkelt komma åt denna metadata information för att hantera fälten i klassen .