..


Sponsrade länkar

Web - Controller

Som nämnts i föregående stycke controllers att hantera serviceärenden som tillhandahålls av DispatchServlet.
För att ange vilka krav ska skickas till sina metoder i varje styrenhet, det finns ett antal @ RequestMapping. Förutom att definiera den väg som en viss metod bör kunna åberopas, kan vi definiera HTTP-metoden som att utföra begäran (POST, GET):






 @ RequestMapping (value = "/" method = RequestMethod.GET)







 public String välkomna (modell modell) {



  



 model.addAttribute (b);



  



 return "/ bok / createBook";







 }



Om det finns en speficifata @ RequestMapping på klassnivå alla angivna sökvägen kommer att betraktas som absoluta, men om denna anteckning anges, är alla vägar vara anhörig, till exempel:





 @ Controller







 {Public class ExampleController



	

  



 @ RequestMapping (value = "/")



  



 public String välkomna (modell modell) {



    



 model.addAttribute (ny bok ());



    



 return "/ bok / createBook";



  



 }







 }



den väg för vilken metoden anropas http://..../ dispatcherServlet kartläggning {} /, men för





 @ Controller







 @ RequestMapping (value = "/ bok")







 {Public class ExampleController



	

  



 @ RequestMapping (value = "/")



  



 public String välkomna (modell modell) {



    



 model.addAttribute (ny bok ());



    



 return "/ bok / createBook";



  



 }







 }



den väg för vilken metoden anropas http://..../ dispatcherServlet kartläggning} {/ bok /.

Vägen uttrycks genom @ RequestMapping kan också skrivas i denna form

 



 / Path / {param}

 
där param kan vara ett värde bestämmas dynamiskt.
Stigar av denna typ kallas URI Mallar och används vanligen för att skapa tjänster Rest. Den lämnar läsaren med någon djup i ämnet.

Varje metod kommenterade med @ Controller RequestMapping kan ha en signatur varierar kraftigt, ser vi de viktigaste parametrarna:

  • Begäran och svar i Servlet API som HttpServletRequest.
  • HttpSession att logga in.
  • org.springframework.web.context.request.WebRequest, ett alternativt sätt att komma åt denna begäran parametrar.
  • Parametrar kommenterade med @ @ PathVariable för RequestMapping med banor som / sökväg / {param}
  • Parametrar kommenterade med @ RequestParam, vars värde tas från begäran.
  • Parametrar som sedan utsätts för åsikten: Modell, Karta och ModelMap. Genom att ställa in parametrar i dessa objekt läggs till som attribut till begäran, och sedan visas, till exempel i en JSP.
  • Fel och BindingResult för form validering.

Även de värden du tillbaka de metoder varierar, men för enkelhetens utställning, i våra exempel kommer vi att använda endast String typ.






 @ Controller







 RequestMapping @ ("exempel")







 {Public class FullController



	

  



 RequestMapping @ ("M1")



  



 public String M1 (HttpServletRequest begäran, HttpServletResponse svar) {



    



 / / Affärslogik



    



 return "/ sökväg";



  



 }



	

  



 RequestMapping @ ("M2")



  



 public String m2 (HttpSession session) {



    



 / / Affärslogik



    



 return "/ sökväg";



  



 }





  



 RequestMapping @ ("M3")



  



 public String m3 (WebRequest begäran) {



    



 / / Affärslogik



    



 return "/ sökväg";



  



 }



	

  



 RequestMapping @ ("M4 / {param}")



  



 public String m4 (@ String PathVariable param) {



    



 / / Affärslogik



    



 return "/ sökväg";



  



 }





  



 RequestMapping @ ("M5")



  



 public void M5 (Modell modell, BindingResult resultat) {



    



 / / Affärslogik



    



 return "/ sökväg";



  



 }







 }



Spring Java-guide
E-Learning
Linux (kurs) Linux (kurs)
Komplett av öppen källkod-system. Från 49 €.
PHP (kurs) PHP (kurs)
Fullständig kurs för att skapa dynamiska webbplatser. Från 49 €.
Ruby och Ruby on Rails (kurs) Ruby och Ruby on Rails (kurs)
Skapa program och webbapplikationer med Ruby och RoR. Från 39 €.
Sponsrade länkar