English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

مثال على صفحات عرض متعددة لـ Spring MVC

في هذا السياق، سنقوم بتحويل صفحة عرض إلى صفحة عرض أخرى.

لننظر في مثال بسيط لـ Spring Web MVC. الخطوات التالية:

تحميل ملف jar لـ Spring في Maven أو إضافة التبعية إنشاء فئة المحكم توفير مدخل المحكم في ملف web.xml تحديد bean في ملف XML منفرد إنشاء مكونات العروض الأخرى تشغيل الخادم وتنفيذ المشروع


1、الإضافة إلى ملف pom.xml

 <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.1.1.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>  
    <groupId>javax.servlet</groupId>  
    <artifactId>servlet-api</artifactId>  
    <version>3.0-alpha-1</version>  
</dependency>

2- إنشاء صفحة الطلب

لنقم بإنشاء صفحة JSP بسيطة تحتوي على رابط.

index.jsp

<html>
<body>
<a href="hello">انقر هنا...</a>
</body>
</html>

3- إنشاء فئة التحكم

لنقم بإنشاء فئة تحكم تعود بصفحة JSP. هنا، نقوم بتوصيل الفئة باستخدام اسم معين يحمل علامة @Requestmapping.

HelloController.java

package com.w3codebox;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController {
@RequestMapping("/hello")
    public String redirect()
    {
        return "viewpage";
    }   
@RequestMapping("/helloagain")
public String display()
{
    return "final";
}
}

4- في ملف web.xml تقدم بملفات التحكم

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>SpringMVC</display-name>
   <servlet>  
    <servlet-name>spring</servlet-name>  
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
    <load-on-startup>1</load-on-startup>    
</servlet>  
<servlet-mapping>  
    <servlet-name>spring</servlet-name>  
    <url-pattern>/</url-pattern>  
</servlet-mapping>  
</web-app>

5- تعريف bean في ملف XML

الآن، قمنا أيضًا بتوفير مكون العرض للمعالج العرض.

في هذا السياق، يتم استخدام InternalResourceViewResolver كـViewResolver.

سيتم استدعاء المكون الموجه من قبل المكون المرئي لـ控制器+اسم الصفحة المضافة

يجب أن تكون هذه الملف XML موجودًا في مجلد WEB-INF.

spring-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.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd">
    <-- توفير دعم لفحص المكونات -->
    <context:component-scan base-package="com.w3codebox" />
    <!-- توفير الدعم للتحويل، التنسيق والتحقق -->
    <mvc:annotation-driven/>
<!-- تعريف محلل الرؤية MVC Spring -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/"></property>
        <property name="suffix" value=".jsp"></property>        
     </bean>
</beans>

6. إنشاء مكونات الرؤية الأخرى

viewpage.jsp


<html>
<body>
<a href="helloagain">تعليمات w3codebox</a>
</body>
</html>

final.jsp


<html>
<body>
<p>مرحبًا بك في تعليمية Spring MVC</p>
</body>
</html>

الإخراج: