2013-07-09 2 views
3

Привет, я новичок в Spring MVC, я следую за весенним справочным документом. У меня есть сомнения в вопросе разрешения. Вот мой пример кода.Разница между переадресацией: префикс и переадресация: префикс в Spring MVC3.0

@Controller 
@RequestMapping("/form") 
public class MyController { 

    @RequestMapping(method = RequestMethod.GET) 
    public String setupForm() { 
     // do my stuff 
     return "myform"; 
    } 

    @RequestMapping(method = RequestMethod.POST) 
    public String processForm(ModelMap model) {    
     // process form data 

     model.addAttribute("notification", "Successfully did it!"); 
     return "redirect:/form"; 
    } 
} 

здесь я использую два контроллера, первый возвращает "myform" и второй один возвращает "redirect:/form". Мой вопрос в том, в чем разница между этими двумя и как он работает?

ответ

-1

Если вы знакомы с сервлетом jsp, я думаю, вы можете знать разницу между переадресацией и пересылкой, или вы можете получить массу ответов от Google. Затем я хочу немного рассказать о том, как Spring это делает. в setupForm метода, он возвращает MyForm, а затем в соответствии с конфигурацией resovler зрения, он будет пытаться найти myform.jsp или еще любит это, и если ваш взгляд resovler является internalresourceviewresovler, весна будет делать вперед автоматически и попытайтесь найти этот jsp в каталоге web-inf, если нет, вам нужно указать префикс прямого доступа. и для processForm метод, который после возврата redirect:/form, он заставит браузер отправить новый запрос /form на сервер, который может быть получен весной mvc, и обработает его соответствующим методом.

Смежные вопросы