Spring MVC传递模型然后查看控制器

时间:2015-05-20 05:39:00

标签: java spring model-view-controller

我坚持使用我的代码,我正在尝试传递对象“学生”的信息。我的情况是这样的:

  1. 注册表格(填写详情然后按提交按钮转到下一页)

  2. 从此视图中打印出模型,然后再次按下下一个按钮。

  3. 此第三页将再次显示该信息。

  4. 问:如何传递相同的对象并将其显示给其他视图?

    我的代码是这样的。

    注册视图

    <form action="/HamburgerProject/stuSubmitAdmissionForm.html" method="post">
        <table>
        <tr>
            <td>Name:</td>          <td><input type="text" name="studentName"></td></tr>
        <tr>
            <td>Age:</td>           <td><input type="text" name="studentAge"></td></tr>
        <tr>
        </table>
        <input type="submit" value="submit this">
    </form>
    

    第一个信息查看:

    <form action="/HamburgerProject/stuSubmitAdmissionForm.html" method="post">
    <table>
        <tr>
            <td>Student's Name :</td>
            <td>${student.studentName}</td>
        </tr>
        <tr>
            <td>Student's Age :</td>
            <td>${student.studentAge}</td>
        </tr>
    </table>
        <input type="submit" value="send"/>
    </form>
    

    第二信息查看:

    <table>
        <tr>
            <td>Student's Name :</td>
            <td>${student.studentName}</td>
        </tr>
        <tr>
            <td>Student's Age :</td>
            <td>${student.studentAge}</td>
        </tr>
    </table>
    

    我的控制器:

    @RequestMapping(value="/stuAdmissionForm.html", method = RequestMethod.GET)
    public ModelAndView getStudentAdmissionForm() {
        ModelAndView model = new ModelAndView("AdmissionForm");
        return model;
    
    }
    
    @RequestMapping(value="/stuSubmitAdmissionForm.html", method = RequestMethod.POST) 
    public ModelAndView submitModelAttributeAnnotationAdmissionForm(@ModelAttribute("student") Student student) {
    
        ModelAndView model = new ModelAndView("AdmissionSuccess");
        return model;
    }
    
    @RequestMapping(value="/stuDisplayForm.html", method = RequestMethod.POST) 
    public ModelAndView getStudent(Student student) {
    
        ModelAndView model = new ModelAndView("NewForm");
        model.addObject(student);
    
        return  model;
    }
    

    在尝试将信息从第二个视图重新显示到第三个视图时,没有传递对象Student。

1 个答案:

答案 0 :(得分:1)

您的拳头信息视图中没有要提交的字段。您必须将值添加到隐藏文件:

Scanner scanner = new Scanner(System.in);
String input = scanner.next();

if ("define".equals(input )){
     String end = scanner.next();// Next token
     java.awt.Desktop.getDesktop().browse(java.net.URI.create("http://dictionary.reference.com/browse/" + end));
}