Spring MVC - Resolver-Beispiel für die Ansicht von Ressourcenpaketen
Das ResourceBundleViewResolverwird verwendet, um die Ansichtsnamen mithilfe der in der Eigenschaftendatei definierten Ansichts-Beans aufzulösen. Das folgende Beispiel zeigt, wie Sie den ResourceBundleViewResolver mit dem Spring Web MVC Framework verwenden.
TestWeb-servlet.xml
<bean class = "org.springframework.web.servlet.view.ResourceBundleViewResolver">
<property name = "basename" value = "views" />
</bean>
Hier das basenamebezieht sich auf den Namen des Ressourcenpakets, das die Ansichten enthält. Der Standardname des Ressourcenpakets lautetviews.properties, die mit der Eigenschaft basename überschrieben werden kann.
views.properties
hello.(class) = org.springframework.web.servlet.view.JstlView
hello.url = /WEB-INF/jsp/hello.jsp
Verwenden Sie beispielsweise die obige Konfiguration, wenn URI -
/ hello wird angefordert, DispatcherServlet leitet die Anforderung an die Datei hello.jsp weiter, die von Bean hello in den views.properties definiert wurde.
Hier ist "Hallo" der Ansichtsname, der abgeglichen werden soll. Wohingegen,class bezieht sich auf den Ansichtstyp und die URL ist der Speicherort der Ansicht.
Lassen Sie uns zunächst eine funktionierende Eclipse-IDE einrichten und die folgenden Schritte zum Entwickeln einer auf dynamischen Formularen basierenden Webanwendung mit Spring Web Framework ausführen.
Schritt | Beschreibung |
---|---|
1 | Erstellen Sie ein Projekt mit dem Namen TestWeb unter einem Paket com.tutorialspoint, wie im Kapitel Spring MVC - Hello World erläutert. |
2 | Erstellen Sie eine Java-Klasse HelloController unter dem com.tutorialspointpackage. |
3 | Erstellen Sie eine Ansichtsdatei hello.jsp im Unterordner jsp. |
4 | Erstellen Sie eine Eigenschaftendatei views.properties im Ordner src. |
5 | Laden Sie die JSTL-Bibliothek jstl.jar herunter . Legen Sie es in Ihren KLASSENPFAD. |
6 | Der letzte Schritt besteht darin, den Inhalt der Quell- und Konfigurationsdateien zu erstellen und die Anwendung wie unten erläutert zu exportieren. |
HelloController.java
package com.tutorialspoint;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.ui.ModelMap;
@Controller
@RequestMapping("/hello")
public class HelloController{
@RequestMapping(method = RequestMethod.GET)
public String printHello(ModelMap model) {
model.addAttribute("message", "Hello Spring MVC Framework!");
return "hello";
}
}
TestWeb-servlet.xml
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:context = "http://www.springframework.org/schema/context"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:component-scan base-package = "com.tutorialspoint" />
<bean class = "org.springframework.web.servlet.view.ResourceBundleViewResolver">
<property name = "basename" value = "views" />
</bean>
</beans>
views.properties
hello.(class) = org.springframework.web.servlet.view.JstlView
hello.url = /WEB-INF/jsp/hello.jsp
hallo.jsp
<%@ page contentType="text/html; charset=UTF-8" %>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h2>${message}</h2>
</body>
</html>
Wenn Sie mit dem Erstellen der Quell- und Konfigurationsdateien fertig sind, exportieren Sie Ihre Anwendung. Klicken Sie mit der rechten Maustaste auf Ihre Anwendung und verwenden SieExport → WAR File Option und speichern Sie Ihre HelloWeb.war-Datei im Webapps-Ordner von Tomcat.
Starten Sie jetzt Ihren Tomcat-Server und stellen Sie sicher, dass Sie mit einem Standardbrowser über den Ordner webapps auf andere Webseiten zugreifen können. Versuchen Sie, auf die URL zuzugreifen -http://localhost:8080/HelloWeb/hello und wenn mit der Spring-Webanwendung alles in Ordnung ist, wird der folgende Bildschirm angezeigt.