Nun von all den Dingen, die ich darüber gelesen habe, wie böse statische Variablen sein können, wurde ich ein statisches fobic. Ich habe solche Angst davor, eine statische Variable in ein großes Projekt zu stecken, weil ich das Gefühl habe, dass ich es bereuen könnte, obwohl es den Code einfacher macht. Ich habe nie verstanden, wenn es in Ordnung ist, eine statische zu verwenden, also versuche ich, sie nie zu verwenden. Ich entwickle dieses große Spiel, und eine statische entityManager
würde so hilfreich sein, stattdessen landete ich entityManager
Instanz zu jeder Klasse, die es brauchen, aber manchmal ist es so schwer, es zu bestehen. Und es wäre so einfach zu tun EntityManager.addEntity(Entity);
Ich bin ein statischer fobic
Ich weiß, dass es Themen wie "Wann ist es in Ordnung, statische zu verwenden?" aber es scheint, es gibt keine einfache Möglichkeit, dies auf eine einfache Weise zu erklären.
Kann mir jemand auf leicht englische Weise sagen, wann es in Ordnung ist, statische Variablen zu verwenden?
Englisch ist nicht meine primäre Sprache, also bitte beachten Sie das.
Die Übergabe einer 'entityManager'-Instanz ist der richtige Weg, aber Sie können es einfacher machen, Tools wie Dependency Injection zu verwenden. Du machst das Richtige. –
Meiner Meinung nach sollten Sie den statischen Entity Manager nicht verwenden, wenn Sie ihn selbst erstellen, da der Entity Manager nicht Thread-sicher ist. Wenn Sie bereits in einer containerverwalteten Umgebung arbeiten, können Sie sie sicher verwenden, da Container wie Spring die Thread-Sicherheit des Entity Managers mit kontextsensitivem Proxy verwalten – Bunti