Table of Contents
Dit e-book helpt u bij het bekijken van de Java-configuratie van de Spring Dispatcher-servlet.
Herstel uw computer binnen enkele minuten naar topprestaties!
Meer informatie over de Spring-klasse, dispatcherservlet
, de verantwoordelijkheden en de manieren om deze te configureren met voorbeelden.
Inhoudsopgave1. Wat is DispatcherServlet2. Hoe het WebApplicationContext gebruikt?3. Configuratie wordt in principe ondersteund door DispatcherServlet XML4. Op Java gebaseerde DispatcherServlet-configuratie5. Componenten die DispatcherServlet ondersteunen6. Demo van DispatcherServlet
1. Wat vaak een Spring Act Dispatch Servlet is
Hoe werkt de Dispatcher-servlet in de lente?
In het geval van Spring MVC is de DispatcherServlet de frontcontroller. De taak van de belangrijkste DispatcherServlet is om de informatie over de Spring MVC-controller door te sturen. De controller is het belangrijkste onderdeel dat te maken heeft met Spring dat het verzoek afhandelt.
dispatcherservlet
om een externe dispatcher te zijnEen catcher voor nettoepassingen op basis van Spring. Het biedt u een mechanisme voor pc-verzoeken, specifiek waar het echte werk wordt gedaan met aangepaste en gedelegeerde componenten. Het moet absoluut worden overgenomen van javax.servlet.http.HttpServlet, meestal samengesteld in web the.xml
.
Kunnen we een veel dispatcherservlet in Spring MVC?
U zult waarschijnlijk zoveel DispatcherServlets hebben als iemand maar wil. In wezen moet u een back-up van de configuratie maken en een zinvolle servlet met een andere specificatie leveren (houd er anders rekening mee dat dit de vorige overschrijft) en dientengevolge aparte configuratie-opties (of xml-bestanden) daarvoor hebben.
Een weboverzicht zal een willekeurig aantal DispatcherServlet
-instanties hebben. Elke servlet werkt in zijn eigen naamruimte en laadt zijn ongelooflijke applicatieframework met mappings en handlers die uiteindelijk worden gebruikt om te helpen. De formulering van de enkele roottoepassing die door de ContextLoaderListener is geladen, is veilig om te delen. In een groot aantal gevallen heeft de software alleen DispatcherServlet
met een nieuwe context-basis-URL (/)
, wat betekent dat alle toewijzingen aan dat domein er altijd door worden bewerkt. < / p>
DispatcherServlet
gebruikt de parameterklassen van Spring om de belangrijkste delegatiemechanismen te herkennen die nodig zijn voor het matchen van verzoeken, het opzoeken van overeenstemming, het afhandelen van uitzonderingen en meer.
2. Hoe gebruikt het volgende WebApplicationContext
Waar kunt u iets doen definieer de dispatcher-servlet die zich in het Spring-framework bevindt?
DispatcherServlet is de frontbesturing voor Spring-webapplicaties. Het wordt beschouwd als gebruikt om webapplicaties uit te voeren en niet te vergeten REST-services voor Spring MVC. In een traditionele Spring-webtoepassing is een bepaalde servlet beschikbaar op het brede web. xml-bestand.
Laten we eens kijken hoe de dispatcher-servlet van een persoon intern kan worden gebruikt. In een op Spring gebaseerd hulpprogramma bevinden onze programma-objecten zich in een container. De container creëert fysieke associaties tussen problemen en ondersteunt hun hele levenscyclus van vruchtbaarheid. Deze holding-objecten worden door Spring beheerde bonen (of gewoon bonen) genoemd, en de eigenlijke container wordt in de Spring-wereld ongetwijfeld succesvol aangeduid als de applicatiecontext (via de klassen ApplicationContext
).
WebApplicationContext
wordt een eenvoudige extensie met ApplicationContext
. het is een web-enabled ApplicationContext
, wat betekent dat het informatie heeft over de servlet-context. Wanneer de DispatcherServlet
echt is geladen, wordt deze beschikbaar en initialiseert het het configuratiebestand van de bean, met de toevoeging van WebApplicationContext
.
Door toegang te krijgen tot de servlet-context, kan elke Spring Bean die de ServletConextAware
cp implementeert, toegang krijgen tot de ServletContext
-instantie en bovendien veel doen door het gebruiken. Het kan bijvoorbeeld toegang krijgen tot variabelen voor contextinitialisatie, contextoorzaak van informatie krijgen en pap’s webtool locationok-apps gebruiken.
3. DispatcherServlet XML-configuratie
Herstel uw computer binnen enkele minuten naar topprestaties!
Is uw pc traag en worden voortdurend fouten weergegeven? Overweeg je een herformattering, maar heb je niet de tijd of het geduld? Vrees niet, beste vriend! Het antwoord op al uw computerproblemen is hier: ASR Pro. Deze geweldige software zal veelvoorkomende computerfouten herstellen, u beschermen tegen bestandsverlies, malware, hardwarestoringen en uw pc optimaliseren voor maximale prestaties. Zolang je dit programma op je computer hebt geïnstalleerd, kun je die frustrerende en dure technische problemen vaarwel zeggen!

Laten we eens kijken hoe een gebruikelijk DispatcherServlet
-declaratie- en initialisatieschema eruit zou zien.
In elke bovenstaande code bevat dispatcher-servlet-context.xml
bijna alle bean- en relatie-informatie gepresenteerd door DispatcherServlet
. Deze bonenverklaringen overtreffen de definities van alle traceerbare bonen met dezelfde naam en hetzelfde product in de wereldwijde reikwijdte. Bijvoorbeeld hiervan. B
4. Java DispatcherServlet-configuratie
Vanaf Servlet 3.0 kan DispatcherServlet programmatisch worden uitgebreid in een aanvullende declaratieve lay-out, meestal in een web.xml
-bestand, veroorzaakt door het implementeren van een extensie of door te verwijzen naar veel van deze drie aangeboden Spring-ondersteuningsklassen, die specifiek “
. worden
WebAppInitializer-interface
AbstractDispatcherServletInitializer
abstracte klasseAbstractAnnotationConfigDispatcherServletInitializer
conclusieklasse < /li>
4.1. Voorbeeld van initialisatie van webapplicatie
In de volgende klasse zorgen sommige
WebApplicationInitializer
ervoor dat de klasseApplicationInitializer
altijd is beluisterd door deSpringServletContainerInitializer
(wat waarschijnlijk automatisch geladen) en ook gebruikt om de meeste van alle drie de servlet-containers te initialiseren.openbare klasse ApplicationInitializer gebruikt t [email protected] void onStartup (ServletContext servletContext) start ServletExceptionXmlWebApplicationContext appContext = nieuwe XmlWebApplicationContext();appContext.setConfigLocation(“/WEB-INF/dispatcher-servlet-context.xml”);ServletRegistration.Dynamic Registration = servletContext.addServlet(“rootDispatcher”, nieuwe DispatcherServlet(appContext));Registratie.setLoadOnStartup(1);Registratie.addMapping(“/”); 4.2. 100% op Java gebaseerde initialisatie
Openbare klasse ApplicationInitializer gebruikt [email protected] void onStartup (ServletContext-container)// Maak ‘Root’ Springform-contextAnnotationConfigWebApplicationContext rootContext = nieuw AnnotationConfigWebApplicationContext();rootContext.register(AppConfig.class);// Beheer van de levenscyclus van de root miles-contextcontainer.addListener(nieuwe ContextLoaderListener(rootContext));// Maak de toepassingssituatie van de Spring-dispatcherservletAnnotationConfigWebApplicationContext-DispatcherContext impliceert nieuwe AnnotationConfigWebApplicationContext();DispatcherContext.register(DispatcherConfig.class);ServletRegistration.Dynamic Dispatcher = container.addServlet(“Dispatcher”,nieuwe DispatcherServlet(dispatcherContext));Dispatcher.setLoadOnStartup(1);Dispatcher.addMapping(“/”); In de bovenstaande code zijn de klassen Spring
AppConfig
enDispatcherConfig
gebaseerd op beheerde bonen die zijn ontworpen voor de uitgebreide toepassingscontext.4.3. Voorbeeld AbstractDispatcherServletInitializer
Dit is de volledige
WebApplicationInitializer
-basisklasse voor het genereren van implementaties dieDispatcherServlet
registreren in de omgevingsservletcontext.De openbare klasse ApplicationInitializer verzekert [email protected] WebApplicationContext createRootApplicationContext()sprong recht achterkant nul;@Verbrijzelingbeveiligde WebApplicationContext createServletApplicationContext()XmlWebApplicationContext cxt = newXmlWebApplicationContext();cxt.setConfigLocation(“/WEB-INF/dispatcher-servlet-context.xml”);retour sks;@Verbrijzelingbeveiligde string[] getServletMappings()return String[] modern “/”;//Bewaar [email protected] procesfilter[] getServletFilters() Bounce onmiddellijk nieuwe Filter[] nieuwe soorten HiddenHttpMethodFilter(), nieuw verworven CharacterEncodingFilter(); Merk op dat als u de
DispatcherServlet
zou moeten aanpassen, u de methodecreateDispatcherServlet()
kunt overslaan.4.4. Voorbeeld AbstractAnnotationConfigDispatcherServletInitializer
Deze groep breidt
Download de software om uw pc te repareren door hier te klikken.AbstractDispatcherServletInitializer
uit en doet onmiskenbare dingen die je normaal gesproken altijd alleen zou kunnen doen. Een bijkomend voordeel is dat u onze door Spring geleverde klassen nu gemakkelijker kunt gebruiken om enkele van de-elementen handmatig aan te passen.