Spring MVC Hallo Weltkommentar

Spring MVC Hallo Welt Anmerkungsbeispiel

Note
Dieses Tutorial basiert auf Spring 2.5.6 und ist ziemlich veraltet. Probieren Sie die neuen Tutorials aus:

In diesem Tutorial nehmen wir die vorherigenSpring MVC hello world XML-based und konvertieren sie in einannotation-based-Projekt.

Verwendete Technologien:

  1. Frühling 2.5.6

  2. JDK 1.6

  3. Maven 3

  4. Eclipse 3.6

1. Verzeichnisaufbau

spring2-mvc-annotation-hello-world

2. Maven

Die Annotation von Spring wird in denselbenspring-webmvc.jar gebündelt.

pom.xml


    4.0.0
    com.example.common
    spring2-mvc-annotation-hello-world
    war
    1.0-SNAPSHOT
    Spring 2 MVC

    
        1.6
        2.5.6
        1.2
        2.5
    

    

        
        
            org.springframework
            spring-webmvc
            ${spring.version}
        

        
        
            javax.servlet
            jstl
            ${jstl.version}
        

        
        
            javax.servlet
            servlet-api
            ${servletapi.version}
            provided
        

    

    

      
        
            org.apache.maven.plugins
            maven-compiler-plugin
            3.3
            
                ${jdk.version}
                ${jdk.version}
            
        

        
            org.eclipse.jetty
            jetty-maven-plugin
            9.2.11.v20150529
            
                10
                
                    /spring2
                
            
        

        
            org.apache.maven.plugins
            maven-eclipse-plugin
            2.9
            
                true
                true
                2.0
                spring2
            
        

      

    

3. Controller- & Handler-Zuordnung

Jetzt können Sie@Controller und@RequestMapping verwenden, um die XML-Konfiguration zu ersetzen.

  1. Controller - Die Controller-Klasse muss den Basis-Controller nicht mehr wieAbstractController oderSimpleFormController erweitern. Kommentieren Sie die Klasse einfach mit einer@Controller-Annotation.

  2. Handler Mapping - Keine Deklaration mehr für die Handlerzuordnung wieBeanNameUrlHandlerMapping,ControllerClassNameHandlerMapping oderSimpleUrlHandlerMapping, alle werden durch eine Standardanmerkung@RequestMapping ersetzt.

HelloWorldController.java

package com.example.common.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping("/welcome")
public class HelloWorldController{

    @RequestMapping(method = RequestMethod.GET)
    public ModelAndView helloWorld(){

        ModelAndView model = new ModelAndView("HelloWorldPage");
        model.addObject("msg", "hello world");

        return model;
    }
}

Wenn@RequestMapping auf Klassenebene angewendet wird (kann auf Methodenebene mitmulti-actions controller angewendet werden), mussRequestMethod eingegeben werden, um anzugeben, welche Methode die Zuordnungsanforderung verarbeiten soll.

In diesem Fall wird, wenn ein URI-Muster/welcome angefordert wird, diesesHelloWorldController zugeordnet und die Anforderung mit der MethodehelloWorld() behandelt.

4. Spring XML-Konfiguration

Sie müssen den View Resolver und das Scannen von Komponenten weiterhin in einer XML-Datei konfigurieren.

/WEB-INF/spring-mvc-config.xml



    
        
            /WEB-INF/pages/
        
        
            .jsp
        
    

    

5. JSP-Seite

Eine einfache JSP-Seite zur Demonstration.

HelloWorldPage.jsp.

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


    

Spring MVC Hello World Annotation Example

${msg}

6. web.xml

web.xml



    Spring Web MVC Application

    
        mvc-dispatcher
        org.springframework.web.servlet.DispatcherServlet
        
            contextConfigLocation
            /WEB-INF/spring-mvc-config.xml
        
        1
    

    
        mvc-dispatcher
        *.htm
    

7. Demo

6.1 To run with the embedded Jetty, type :

$ mvn jetty:run

spring2-mvc-annotation-demo

6.2 To import into Eclipse IDE.

$ mvn eclipse:eclipse

Note
Wenn Sie dieses auf Annotationen basierende Hallo-Welt-Beispiel von Spring MVC mit früherenXML-based example vergleichen, können Sie feststellen, dass dieser Annotationsansatz bei der Verkabelung der Controller-Klasse und der URL-Handler-Zuordnung einfacher und flexibler ist , weil Sie die Controller-Klasse nicht explizit deklarieren oder eine bestimmte Klasse erweitern müssen.

Quellcode herunterladen

Laden Sie es herunter -spring2-mvc-annotation.zip (15 KB)