Java 在SpringMVC中处理多个页面

Java 在SpringMVC中处理多个页面,java,html,hibernate,jsp,spring-mvc,Java,Html,Hibernate,Jsp,Spring Mvc,我是SpringMVC的新手,尝试在SpringMVC3中实现这个示例。 当我提交第一个Jsp时,我可以转到下一个Jsp,但在提交第二个Jsp后,它将使用新Jsp(空值)重定向回第一个Jsp。请提出意见,让我更清楚地理解 计划 @Id @Column(name="PROJECT_ID") @GeneratedValue(strategy=GenerationType.AUTO) private int projectId; @Column(name="PROJECT_NAM

我是SpringMVC的新手,尝试在SpringMVC3中实现这个示例。 当我提交第一个Jsp时,我可以转到下一个Jsp,但在提交第二个Jsp后,它将使用新Jsp(空值)重定向回第一个Jsp。请提出意见,让我更清楚地理解

计划

  @Id
  @Column(name="PROJECT_ID")
  @GeneratedValue(strategy=GenerationType.AUTO)
  private int projectId;

  @Column(name="PROJECT_NAME")
  private String projectName;

  @Column(name="LOCATION")
  private String location;

  @Column(name="DESCRIPTION")
  private String description;

  @Column(name="DEV_TYPE")
  private String developmentType;
项目服务

    public void addProject(Project project);
ProjectServiceImpl

   @Autowired
   private ProjectDao projectDao;

    public void addProject(Project project) {
    projectDao.addProject(project);
    }
项目道

   public void addProject(Project project);
项目导入

   public void addProject(Project project) {
     getCurrentSession().save(project);     
    }
项目控制器

    @RequestMapping(value = "/addProject.htm", method = RequestMethod.GET)
    public ModelAndView reportForm(ModelMap model, HttpServletRequest request,
        Project project) {
    model.addAttribute("project", project);
    ModelAndView mav = new ModelAndView("add");
    return mav;
    }

    @RequestMapping(value = "/addProject.htm", method = RequestMethod.POST)
    public ModelAndView addConfirm(@ModelAttribute("project") Project project,
                   BindingResult result, ModelMap model, SessionStatus status, HttpServletRequest request) {
           HttpSession session = request.getSession();
           validator.validateProject(project, result);
                if (result.hasErrors()) {
                      return new ModelAndView("addProject");
                   } else if (project.getDescription() == null) {
                           //return the form that will set field two's value
                           return new ModelAndView("addProjectExt");
                   } //and so on for all the other field that need to be set...
          else{
        model.addAttribute("project", project);
        projectService.addProject(project);
    return "redirect:listProject";
        }
        }
JSP1 addProject.jsp

            <form:form method="POST" modelAttribute="project" action="addProject.htm" >
            <div class="input">

                    <form:label path="projectName" type="text" value="" >Project Name :*</form:label>
                    <form:input path="projectName"/>                
                </div>
            <div class="input">

                    <form:label path="location" type="text" value="" >Location :</form:label>
                    <form:input path="location"/>               
                   </div>
               </form:form>

项目名称:*
地点:
JSP2 addProjectExt.jsp

                <form:form method="POST" modelAttribute="project" action="addProject.htm" >
              <div class="input">

                    <form:label path="description" type="text" value="" >Description :*</form:label>
                    <form:input path="description"/>                
                </div>
                <div class="input">

                    <form:label path="developmentType" type="text" value="" >Development Type :</form:label>
                    <form:input path="developmentType"/>                
                </div>
              </form:form>

说明:*
开发类型:

请尝试使用@SessionAttribute(“项目”)


并在JSP中使用submit按钮的目标,以便控制器知道并区分next按钮和submit按钮。

请尝试使用@SessionAttribute(“项目”)


并使用JSP中提交按钮的目标,以便控制器知道并区分“下一步”按钮和“提交”按钮。

非常感谢。。你把我举起来。。你是春天的上帝。。。。。。。。。。对于这种帮助,我无话可说……非常感谢。。你把我举起来。。你是春天的上帝。。。。。。。。。。对于这种帮助,没有话可说。。。。