Spring MVC - Ví dụ về trình phân giải Xml View
XmlViewResolver được sử dụng để phân giải tên chế độ xem bằng cách sử dụng các hạt chế độ xem được xác định trong tệp xml. Ví dụ sau đây cho thấy cách sử dụng XmlViewResolver bằng khung Spring Web MVC.
TestWeb-servlet.xml
<bean class = "org.springframework.web.servlet.view.XmlViewResolver">
<property name = "location">
<value>/WEB-INF/views.xml</value>
</property>
</bean>
views.xml
<bean id = "hello"
class = "org.springframework.web.servlet.view.JstlView">
<property name = "url" value = "/WEB-INF/jsp/hello.jsp" />
</bean>
Ví dụ: bằng cách sử dụng cấu hình trên, nếu URI -
/ hello được yêu cầu, DispatcherServlet sẽ chuyển tiếp yêu cầu tới hello.jsp được định nghĩa bởi bean hello trong view.xml.
Để bắt đầu, hãy để chúng tôi có một IDE Eclipse hoạt động tại chỗ và tuân theo các bước sau để phát triển Ứng dụng web dựa trên Biểu mẫu động bằng cách sử dụng Spring Web Framework.
Bươc | Sự miêu tả |
---|---|
1 | Tạo một dự án với tên TestWeb trong gói com.tutorialspoint như đã giải thích trong chương Spring MVC - Hello World. |
2 | Tạo một lớp Java HelloController trong gói com.tutorialspointpack. |
3 | Tạo một tệp xem hello.jsp trong thư mục con jsp. |
4 | Tải xuống thư viện JSTL jstl.jar . Đặt nó vào CLASSPATH của bạn. |
5 | Bước cuối cùng là tạo nội dung của tệp nguồn và cấu hình và xuất ứng dụng như được giải thích bên dưới. |
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.XmlViewResolver">
<property name = "location">
<value>/WEB-INF/views.xml</value>
</property>
</bean>
</beans>
views.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">
<bean id = "hello"
class = "org.springframework.web.servlet.view.JstlView">
<property name = "url" value = "/WEB-INF/jsp/hello.jsp" />
</bean>
</beans>
xin chào.jsp
<%@ page contentType = "text/html; charset = UTF-8" %>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h2>${message}</h2>
</body>
</html>
Khi bạn đã hoàn tất việc tạo tệp nguồn và cấu hình, hãy xuất ứng dụng của bạn. Nhấp chuột phải vào ứng dụng của bạn, sử dụngExport → WAR File tùy chọn và lưu HelloWeb.war tệp trong thư mục ứng dụng web của Tomcat.
Bây giờ, hãy khởi động máy chủ Tomcat của bạn và đảm bảo rằng bạn có thể truy cập các trang web khác từ thư mục ứng dụng web bằng trình duyệt chuẩn. Cố gắng truy cập URL -http://localhost:8080/HelloWeb/hello và nếu mọi thứ đều ổn với Ứng dụng Web Mùa xuân, chúng ta sẽ thấy màn hình sau.