Spring MVC - przykład stron statycznych
Poniższy przykład pokazuje, jak napisać prostą aplikację internetową przy użyciu Spring MVC Framework, która może uzyskiwać dostęp do stron statycznych wraz ze stronami dynamicznymi za pomocą <mvc:resources> etykietka.
Na początek przygotujmy działające środowisko Eclipse IDE i postępuj zgodnie z następującymi krokami, aby opracować aplikację internetową opartą na formularzu dynamicznym przy użyciu Spring Web Framework.
Krok | Opis |
---|---|
1 | Utwórz projekt o nazwie HelloWeb pod pakietem com.tutorialspoint, jak wyjaśniono w rozdziale Spring MVC - Hello World. |
2 | Utwórz WebController klasy Java w pakiecie com.tutorialspoint. |
3 | Utwórz plik statyczny final.htm w podfolderze jsp. |
4 | Zaktualizuj plik konfiguracyjny Spring HelloWeb-servlet.xml w folderze WebContent / WEB-INF, jak pokazano poniżej. |
5 | Ostatnim krokiem jest utworzenie zawartości plików źródłowych i konfiguracyjnych oraz wyeksportowanie aplikacji, co zostało wyjaśnione poniżej. |
WebController.java
package com.tutorialspoint;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class WebController {
@RequestMapping(value = "/index", method = RequestMethod.GET)
public String index() {
return "index";
}
@RequestMapping(value = "/staticPage", method = RequestMethod.GET)
public String redirect() {
return "redirect:/pages/final.htm";
}
}
HelloWeb-servlet.xml
<?xml version = "1.0" encoding = "UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = " http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xmlns:mvc = "http://www.springframework.org/schema/mvc"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-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 id = "viewResolver" class = "org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name = "prefix" value = "/WEB-INF/jsp/" />
<property name = "suffix" value = ".jsp" />
</bean>
<mvc:resources mapping = "/pages/**" location = "/WEB-INF/pages/" />
<mvc:annotation-driven/>
</beans>
Tutaj <mvc:resources..../>tag jest używany do mapowania stron statycznych. Atrybut mapowania musi mieć wartośćAnt patternktóry określa wzorzec adresu URL żądań http. Atrybut location musi określać co najmniej jedną prawidłową lokalizację katalogu zasobów zawierającą strony statyczne, w tym obrazy, arkusze stylów, JavaScript i inną statyczną zawartość. Wiele lokalizacji zasobów można określić za pomocą listy wartości oddzielonych przecinkami.
Poniżej znajduje się zawartość pliku widoku Spring WEB-INF/jsp/index.jsp. To będzie strona docelowa; ta strona wyśle żądanie dostępu dostaticPage service method, który przekieruje to żądanie na stronę statyczną dostępną w folderze WEB-INF / pages.
index.jsp
<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
<head>
<title>Spring Landing Page</title>
</head>
<body>
<h2>Spring Landing Pag</h2>
<p>Click below button to get a simple HTML page</p>
<form:form method = "GET" action = "/HelloWeb/staticPage">
<table>
<tr>
<td>
<input type = "submit" value = "Get HTML Page"/>
</td>
</tr>
</table>
</form:form>
</body>
</html>
final.htm
<html>
<head>
<title>Spring Static Page</title>
</head>
<body>
<h2>A simple HTML page</h2>
</body>
</html>
Po utworzeniu plików źródłowych i konfiguracyjnych wyeksportuj aplikację. Kliknij prawym przyciskiem myszy aplikację, użyj opcji Eksportuj → Plik WAR i zapisz plik HelloWeb.war w folderze webapps Tomcat.
Teraz uruchom serwer Tomcat i upewnij się, że możesz uzyskać dostęp do innych stron internetowych z folderu webapps przy użyciu standardowej przeglądarki. Teraz spróbuj uzyskać dostęp do adresu URL - http: // localhost: 8080 / HelloWeb / index. Jeśli z aplikacją internetową Spring wszystko jest w porządku, zobaczymy następujący ekran.
Kliknij przycisk „Pobierz stronę HTML”, aby uzyskać dostęp do strony statycznej wymienionej w metodzie usługi staticPage. Jeśli wszystko jest w porządku z Twoją aplikacją internetową Spring, zobaczymy następujący ekran.