Spring MVC PropertiesMethodNameResolver exemple

Exemple Spring MVC PropertiesMethodNameResolver

PropertiesMethodNameResolver, un résolveur de nom de méthodeMultiActionController flexible, endefine the mapping between the URL and method name explicitly. Voir l'exemple suivant:

1. MultiActionController

Un exemple MultiActionController.

package com.example.common.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;

public class CustomerController extends MultiActionController{

    public ModelAndView add(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

        return new ModelAndView("CustomerPage", "msg","add() method");

    }

    public ModelAndView delete(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

        return new ModelAndView("CustomerPage", "msg","delete() method");

    }

    public ModelAndView update(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

        return new ModelAndView("CustomerPage", "msg","update() method");

    }

    public ModelAndView list(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

        return new ModelAndView("CustomerPage", "msg","list() method");

    }

}

2. PropertiesMethodNameResolver

AvecPropertiesMethodNameResolver, vous pouvez facilement mapper n'importe quel nom d'URL au nom de méthode correspondant:



 

 
   
    
      
    
       add
       update
       delete
       list
       add
    
       
     
    
  

Maintenant, l'URL correspondra au nom de la méthode selon le modèle suivant:

  1. /customer/a.htm –> add() method

  2. /customer/b.htm –> update() method

  3. /customer/c.htm –> delete() method

  4. /customer/d.htm –> list() method

  5. /customer/whatever.htm –> add() method

Note
Par défaut,MultiActionController est utilisé leInternalPathMethodNameResolver pour mapper l'URL au nom de la méthode correspondante.

Télécharger le code source