Implementera lazy initialization
Du arbetar med att optimera starttiden för en Java-applikation. Teamet har identifierat att databasanslutningar skapas i förtid, vilket orsakar onödiga fördröjningar. Du behöver implementera lazy initialization – det vill säga att en anslutning bara skapas om det inte redan finns någon – i klassen Database för att förbättra startprestandan.
Den här övningen är en del av kursen
Optimera kod i Java
Övningsinstruktioner
- Skapa en egenskap
clientav typenDatabaseClient. - Anslut till databasen med lazy initialization.
- Returnera databasklienten först när den är ansluten.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
public class Main {
public static void main(String[] args) {}
}
class Database {
// Create a property for DatabaseClient
private ____ ____
public DatabaseClient getClient() {
// Lazily connect to our database
if (client ____ ____) {
client.connect("https//our-database.com");
}
// Return only when connected
return ___
}
}
// This class is simulating a real client connecting to a database
class DatabaseClient {
public void connect(String connectionUrl) {}
}