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

مثال على تحكمات Spring MVC المتعددة

في Spring MVC، يمكننا إنشاء عدة تحكمات في وقت واحد. يجب استخدام @Controller تعليق تعيين كل فئة تحكم. هنا، نرى مثال على Spring 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="hello1">Spring MVC</a> ||
<a href="hello2">Spring Boot</a>
</body>
</html>

3、إنشاء كلاسيك التحكم

دعونا ننشئ كلاسيوين للتحكم، كل كلاسيك يرجع إلى صفحة عرض محددة.

HelloController1.java

package com.w3codebox;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController1 {
@RequestMapping("/hello1")
    public String display()
    {
        return "viewpage1";
    }   
}

HelloController2.java

package com.w3codebox;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController2 {
@RequestMapping("/hello2")
    public String display()
    {
        return "viewpage2";
    }   
}

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- تعريف بيانات المكون في ملف xml

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" />
    <!-- Provide support for conversion, formatting and validation -->
    <mvc:annotation-driven/>
<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. إنشاء مكونات عرض أخرى

viewpage1.jsp

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

viewpage1.jsp

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

الإخراج: