2012-01-03 2 views
1

J'ai écrit le code suivant:Spring MVC 3 URL débutant

@Controller 
@RequestMapping("/test") 
public class Home { 

@RequestMapping(value = "index") 
public String index() { 
    return "index"; 
} 

@RequestMapping(value = "welcome") 
public String welcome(@RequestParam("txtname") String name, ModelMap model) { 
    model.addAttribute("msg", name); 
    return "index"; 
} 

} 

Maintenant, j'ai deux doutes. Je veux quelque chose comme/test pour charger index() directement. Maintenant, je dois taper/tester/indexer. Comment puis-je configurer cela.

Deuxièmement, index() et welcome() sont presque identiques. Juste que le paramètre de requête est ajouté à la sortie. J'ai écrit index() car/welcome ne fonctionnera pas s'il n'y a pas de paramètre. Je veux que le nom txt soit rendu facultatif ou quelque chose en tant que tel afin que l'accueil puisse être abandonné.

+1

Vous pouvez essayer de régler le @RequestParam = false Required: @RequestParam (valeur = « txtName ", requis = faux) –

Répondre

3

Je veux quelque chose comme/test pour charger index() directement. Maintenant, je dois taper/tester/indexer.

sautez la carte supplémentaire:

@RequestMapping 
public String index() { 
    return "index"; 
} 

Je veux txtName à apporter en option ou quelque chose en tant que telle sorte que bienvenue peut être abandonné.

Essayez ceci:

@RequestParam(value = "txtname", required = false) 

En plus de votre méthode welcome() peut être simplifiée:

@RequestMapping(value = "welcome") 
public String welcome(@RequestParam("txtname") String name) { 
    return new ModelAndView("index", "msg", name); 
}