关于@RequestMapping注解的类或者方法,在访问时报404错误跳转问题

今天学习springmvc时候,使用@RequestMapping注解进行页面调用访问,但是出现了跳转页面时候404的问题,找到了解决方法。


问题描述:

原始代码如下

@RequestMapping(value="/book/{bid}",method = RequestMethod.PUT)
    public String updatebook(@PathVariable("bid")Integer id){
        System.out.println("更新"+id);
        return "book.jsp";
    }

    @RequestMapping(value="/book",method = RequestMethod.POST)
    public String getbook(){
        System.out.println("新增");
        return "book.jsp";
    }

上面函数访问的时候出现
关于@RequestMapping注解的类或者方法,在访问时报404错误跳转问题
但是下面的函数是能正常访问的,主要是占位符的不同,多了占位符之后就无法正常跳转了。


原因分析:

经过查找资料,大概分析如下:
问题出现原因:
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。
用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
解决办法:
在路径前加上…/ 即可
可能在跳转过程中有很多路径前多一个或两个你的类上的RequestMapping的值,我们需要根据跳转的层级关系来加路径。

如果出现了在跳转过程中jsp的css或js等失效,原因可能是静态资源的引入都是相对路径,改为绝对路径就可以保持每一次跳转,静态资源不会因为地址的变化而请求不到。


修改代码如下:

 @RequestMapping(value="/book/{bid}",method = RequestMethod.PUT)
    public String updatebook(@PathVariable("bid")Integer id){
        System.out.println("更新"+id);
        return "../book.jsp";
    }

之后就能正常访问了

关于@RequestMapping注解的类或者方法,在访问时报404错误跳转问题

关于@RequestMapping注解的类或者方法,在访问时报404错误跳转问题

上一篇:Linux系统目录结构


下一篇:[转]“404 error: Page not found.”在Magento管理员登录页面中