说明:
以下是一段伪代码
@Controller
@RequestMapping(value="a")
class A{
@RequestMapping(value="test")
public String test(request,response...){
//或者ModelAndView
//return "redirect:index"
//return "forward:index"
return "index";
}
}
当我访问a/test时候就会访问到WEB-INF下的index.jsp,但是浏览器上的路径会显示出来(localhost:8080/project/a/test),
,只显示项目不显示具体地址(localhost:8080/project/),我应该怎么做,转发好像用不了。
请求大神们指点迷津,感激不尽。
forward和redirect的连接是你RequestMapping的定义,不是html文件名。
例子
@Controller
@RequestMapping(value="a")
class A{
@RequestMapping(value="test")
public String test(request,response...){
//或者ModelAndView
// 注意这里redirest的是另外一个RequestMapping的定义
return "redirect:/b/test";
}
}
@Controller
@RequestMapping(value="b")
class B{
@RequestMapping(value="test")
public String test(request,response...){
//或者ModelAndView
// 这里是一个html文件名
return "index";
}
}
<!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/pages/" />
<property name="suffix" value=".jsp" />
</bean>