Heim Java javaLernprogramm Beschreiben Sie kurz die Konfiguration default-lazy-init='true' in der Java-Konfiguration

Beschreiben Sie kurz die Konfiguration default-lazy-init='true' in der Java-Konfiguration

May 09, 2017 pm 01:31 PM
default lazy spring

Der folgende Editor bringt Ihnen eine kurze Diskussion über die Standard-Lazy-Init-Parameter und Lazy-Init im Frühjahr. Der Herausgeber findet es ziemlich gut, deshalb werde ich es jetzt mit Ihnen teilen und es allen als Referenz geben. Folgen wir dem Editor und werfen wir einen Blick darauf.

Es gibt eine default-lazy-init="true"-Konfiguration auf dem Root-Knoten in der Spring-Konfiguration:

1 . Springs Standard-Lazy-Init-Parameter

Dieser Parameter zeigt ein verzögertes Laden an, das heißt, die mit Anmerkungen versehene Bean wird nicht instanziiert, wenn das Projekt gestartet wird, es sei denn, startet das Projekt Muss verwendet werden, das nicht instanziierte Annotations--Objekt wird injiziert und aufgerufen, wenn das Programm tatsächlich auf den Aufruf zugreift

Wenn der Frühling beginnt, ist der Parameter default-lazy-init standardmäßig auf false gesetzt und wird es tun Standardmäßig wird das gesamte Objektinstanzdiagramm geladen, von der Initialisierung ACTION über die Dienstkonfiguration bis hin zur Dao-Konfiguration, bis hin zur Datenbankverbindung, Transaktionen usw. Dies kann zwar die Belastung des Webservers zur Laufzeit reduzieren, ist für Entwickler aber zweifelsohne eine äußerst ineffiziente Einstellung.

spring stellt das Attribut default-lazy-init bereit, dessen Konfigurationsform in applicationContext.xml wie folgt lautet:

< beans default-lazy-init ="true" >
  ....... 
</beans>
Nach dem Login kopieren

In der tatsächlichen Entwicklung kann das Attribut default-lazy-init auf true gesetzt werden, was die Startzeit des Projekts erheblich verkürzen kann

2 Attribute im Frühling

1. lazy-init

<beans> 
   <bean id="service1" type="bean路径" lazy-init="true"/> 
   <bean id="service2" type="bean路径" lazy-init="false"> 
       <property name="service1" ref="service1"/> 
   </bean> 
</beans>
Nach dem Login kopieren

Für die beiden oben genannten Beans ist ein Lazy-Init-Attribut wahr und das other ist falsch. Was ist der Unterschied?

Wenn der IoC-Container startet, wird service1 nicht instanziiert, aber wenn der Container service2 instanziiert, wird auch service1 instanziiert. Mit anderen Worten: Bei lazy-init="true"-Beans wird die Bean nicht instanziiert, wenn der IoC-Container startet, sondern nur dann instanziiert, wenn der Container sie verwenden muss. Lazy-init wirkt sich positiv auf die Containereffizienz aus und Sie können unnötige Beans ignorieren.

Gleichzeitig können wir das Lazy-Init-Attribut in der entsprechenden Bean für bestimmte Module verwenden. Lazy-Init hat eine höhere Priorität als die Priorität von Default-Lazy-Init .

Spring-Anmerkungen können mit dem Annotations-Tag @Lazy(false) am Klassennamen annotiert werden, was der Konfiguration des lazy-init-Attributs im Bean

entspricht 2. abstract

<bean id="baseTxService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true"> 
</bean>
Nach dem Login kopieren

Wenn Bean abstract="true", wird das Bean nicht instanziiert

Dies dient lediglich dazu, Startzeit während des Entwicklungsprozesses zu sparen. und bei der Bereitstellung in der tatsächlichen Umgebung ist es nicht erforderlich, default-lazy-init auf true zu setzen. Schließlich ist es nicht üblich, es in einer tatsächlichen Umgebung bereitzustellen. Es ist kein großes Problem, es jedes Mal für eine Minute zu starten, und es kann die Servereffizienz verbessern.

Natürlich können nicht alle Beans „default-lazy-init“ auf „true“ setzen und können nicht für Scheduler-Beans verwendet werden

[Verwandte Empfehlungen]

1 Kostenloses Java-Video-Tutorial

2. Geek Academy Java-Video-Tutorial

3. JAVA-Tutorial-Handbuch

Das obige ist der detaillierte Inhalt vonBeschreiben Sie kurz die Konfiguration default-lazy-init='true' in der Java-Konfiguration. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ein neues Programmierparadigma, wenn Spring Boot auf OpenAI trifft Ein neues Programmierparadigma, wenn Spring Boot auf OpenAI trifft Feb 01, 2024 pm 09:18 PM

Im Jahr 2023 ist die KI-Technologie zu einem heißen Thema geworden und hat enorme Auswirkungen auf verschiedene Branchen, insbesondere im Programmierbereich. Die Bedeutung der KI-Technologie wird den Menschen zunehmend bewusst, und die Spring-Community bildet da keine Ausnahme. Mit der kontinuierlichen Weiterentwicklung der GenAI-Technologie (General Artificial Intelligence) ist es entscheidend und dringend geworden, die Erstellung von Anwendungen mit KI-Funktionen zu vereinfachen. Vor diesem Hintergrund entstand „SpringAI“ mit dem Ziel, den Prozess der Entwicklung von KI-Funktionsanwendungen zu vereinfachen, ihn einfach und intuitiv zu gestalten und unnötige Komplexität zu vermeiden. Durch „SpringAI“ können Entwickler einfacher Anwendungen mit KI-Funktionen erstellen, wodurch diese einfacher zu verwenden und zu bedienen sind.

Verwenden Sie Spring Boot und Spring AI, um generative Anwendungen für künstliche Intelligenz zu erstellen Verwenden Sie Spring Boot und Spring AI, um generative Anwendungen für künstliche Intelligenz zu erstellen Apr 28, 2024 am 11:46 AM

Als Branchenführer bietet Spring+AI durch seine leistungsstarke, flexible API und erweiterte Funktionen führende Lösungen für verschiedene Branchen. In diesem Thema werden wir uns mit den Anwendungsbeispielen von Spring+AI in verschiedenen Bereichen befassen. Jeder Fall wird zeigen, wie Spring+AI spezifische Anforderungen erfüllt, Ziele erreicht und diese LESSONSLEARNED auf ein breiteres Anwendungsspektrum ausdehnt. Ich hoffe, dieses Thema kann Sie dazu inspirieren, die unendlichen Möglichkeiten von Spring+AI tiefer zu verstehen und zu nutzen. Das Spring-Framework hat eine mehr als 20-jährige Geschichte im Bereich der Softwareentwicklung, und seit der Veröffentlichung der Spring Boot 1.0-Version sind 10 Jahre vergangen. Nun kann niemand diesen Frühling bestreiten

Was sind die Implementierungsmethoden für programmatische Frühlingstransaktionen? Was sind die Implementierungsmethoden für programmatische Frühlingstransaktionen? Jan 08, 2024 am 10:23 AM

So implementieren Sie programmgesteuerte Spring-Transaktionen: 1. Verwenden Sie TransactionCallback und TransactionCallbackWithoutResult; 4. Verwenden Sie TransactionTemplate in Kombination mit @Transactional;

Die Unterschiede und Zusammenhänge zwischen Spring Boot und Spring Cloud Die Unterschiede und Zusammenhänge zwischen Spring Boot und Spring Cloud Jun 22, 2023 pm 06:25 PM

SpringBoot und SpringCloud sind beides Erweiterungen des Spring Framework, die Entwicklern dabei helfen, Microservice-Anwendungen schneller zu erstellen und bereitzustellen. Sie haben jedoch jeweils unterschiedliche Zwecke und Funktionen. SpringBoot ist ein Framework zum schnellen Erstellen von Java-Anwendungen, das es Entwicklern ermöglicht, Spring-basierte Anwendungen schneller zu erstellen und bereitzustellen. Es bietet eine einfache und leicht verständliche Möglichkeit, eigenständige, ausführbare Spring-Anwendungen zu erstellen

So legen Sie die Transaktionsisolationsstufe im Frühjahr fest So legen Sie die Transaktionsisolationsstufe im Frühjahr fest Jan 26, 2024 pm 05:38 PM

So legen Sie die Transaktionsisolationsstufe in Spring fest: 1. Verwenden Sie die Annotation @Transactional. 3. Legen Sie sie in der Spring-Konfigurationsdatei fest. 4. Legen Sie sie in der Java-Konfigurationsklasse fest. Detaillierte Einführung: 1. Verwenden Sie die Annotation @Transactional, fügen Sie die Annotation @Transactional zu der Klasse oder Methode hinzu, die eine Transaktionsverwaltung erfordert, und legen Sie die Isolationsstufe im Attribut fest. 2. In der Spring-Konfigurationsdatei usw.

Die 7 am häufigsten verwendeten Anmerkungen in Spring, der mächtigsten Organisation der Geschichte! Die 7 am häufigsten verwendeten Anmerkungen in Spring, der mächtigsten Organisation der Geschichte! Jul 26, 2023 pm 04:38 PM

Mit der Aktualisierung und Iteration der Technologie begann Java5.0, Anmerkungen zu unterstützen. Als führendes Framework in Java hat Spring seit der Aktualisierung auf Version 2.5 langsam damit begonnen, die XML-Konfiguration aufzugeben, und es werden mehr Annotationen zur Steuerung des Spring-Frameworks verwendet.

Lernen Sie Spring Cloud von Grund auf Lernen Sie Spring Cloud von Grund auf Jun 22, 2023 am 08:11 AM

Als Java-Entwickler ist das Erlernen und Verwenden des Spring-Frameworks eine wesentliche Fähigkeit. Mit der Popularität von Cloud Computing und Microservices ist das Erlernen und Verwenden von Spring Cloud zu einer weiteren Fähigkeit geworden, die beherrscht werden muss. SpringCloud ist ein auf SpringBoot basierendes Entwicklungstoolset zum schnellen Aufbau verteilter Systeme. Es bietet Entwicklern eine Reihe von Komponenten, darunter Dienstregistrierung und -erkennung, Konfigurationscenter, Lastausgleich und Leistungsschalter usw., sodass Entwickler Mikrofunktionen erstellen können

Frühlingsanmerkung enthüllt: Analyse gängiger Anmerkungen Frühlingsanmerkung enthüllt: Analyse gängiger Anmerkungen Dec 30, 2023 am 11:28 AM

Spring ist ein Open-Source-Framework, das viele Anmerkungen bereitstellt, um die Java-Entwicklung zu vereinfachen und zu verbessern. In diesem Artikel werden häufig verwendete Spring-Annotationen ausführlich erläutert und spezifische Codebeispiele bereitgestellt. @Autowired: Die Autowired-Annotation @Autowired kann verwendet werden, um Beans im Spring-Container automatisch zu verdrahten. Wenn wir die Annotation @Autowired verwenden, wenn Abhängigkeiten erforderlich sind, findet Spring passende Beans im Container und fügt sie automatisch ein. Der Beispielcode lautet wie folgt: @Auto

See all articles