实战企业项目--springMVC+Mybatis

1.Spring框架下页面跳转心得:

JobDetailController中部分代码:

@Controller
@RequestMapping("jobDetail")
public class JobDetailController extends BaseCRUDController<JobDetail, String> {

    @Autowired
    private IndustryService industryService;
    @Autowired
    private EducationService educationService;
    @Autowired
    private UserInfoService userInfoService;
    private JobDetailService getJobDetailService() {
        return (JobDetailService) baseService;
    }

    /**
     * @param m
     * @return
     */
    @RequestMapping(value = { "" })
    public String jobDetailIndex(Model m,HttpSession session) {
        //方法体
        return saveReturnViewName();
    }

    /**
     * @param jdId
     * @return
     */
    @RequestMapping(value="/updateJobDetail" ,method = RequestMethod.POST)
    public String jobDetailUpdate(Model m,JobDetail jobDetail,HttpSession session) {
        //调用相应的Service,然后service再调用相应的mapper执行相应的操作
        return "redirect:/jobDetail";
    }
    

    @Override
    protected String saveReturnViewName() {
        return "/enterprise/jobDetail/saveJobDetail";
    }

看到上述代码,可以帮我们理解

     url请求、后台controller方法(eg:上面的)、页面跳转(方法返回的return语句)

 三者之间的对应关系。


      如果项目启动之后,我在浏览器的地址栏中输入http://localhost:8080/863soft/jobDetail,那么spring框架会根据标签@RequestMapping来调用

       public String jobDetailIndex(Model m,HttpSession session){......}

方法。有人会问为什么会调用执行这个方法呢?因为这个方法@RequestMapping(value = { "" })中的value为空,则自动执行此方法。或许有人接着问:这个方法执行完毕之后,跳转到什么地方呢?别担心,这个方法的return会帮我们们跳转到我们想去的地方,return后面接的是 目标jsp页面所在的路径字符串。

      比如,执行完方法后我们跳转到   "/enterprise/jobDetail/saveJobDetail"

实战企业项目--springMVC+Mybatis_第1张图片

这样我们再执行完相应的操作后就能跳转到相应的jsp页面中去了。是不是很简单!

说明:

        不同的请求url,Spring会调用不同的方法进行处理:(其中的诀窍就在于标签@RequestMapping

        http://localhost:8080/863soft/jobDetail<------------->jobDetailIndex方法

        http://localhost:8080/863soft/jobDetail/updateJobDetail<------------->jobDetailUpdate方法

   

你可能感兴趣的:(框架)