SpringMVC如何解析视图
文章图片
Paste_Image.png
文章图片
Paste_Image.png
文章图片
Paste_Image.png 常用的视图实现类
文章图片
Paste_Image.png 视图解析器的作用
文章图片
Paste_Image.png 常用的视图解析器实现类
文章图片
Paste_Image.png
文章图片
Paste_Image.png
文章图片
Paste_Image.png 不经过控制器,直接响应页面
1.配置springmvc.xml配置文件
2.直接在浏览器访问:http://localhost:8081/spring-mvc-helloworld/newSuccess,就可以直接访问静态success.jsp页面
3.但是这样配置后,@RequestMapping()就会失效,所以如果配置mvc:view-controlle后想要@RequestMapping仍然起作用,应该加上
自定义视图
1.首先自己实现一个View接口
HelloView.java
package lxf.springmvc.views;
import java.util.Date;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.View;
/**
* 自定义视图
* @author lxf
*/
@Component
public class HelloViewimplements View{
/**
* 视图输出类型
*/
@Override
public String getContentType() {
// TODO Auto-generated method stub
return "text/html";
}
/**
* 渲染视图
*/
@Override
public void render(Map model, HttpServletRequest request, HttpServletResponse response)
throws Exception {
// TODO Auto-generated method stub
response.getWriter().print("hello view , time " + new Date());
}
}
【spring-mvc-4-视图】2.在
springmvc.xml
中配置视图解析器并设置优先级
3.修改SpringMVCTest控制器
@RequestMapping("springmvc")
@Controller
public class SpringMVCTest {
public static final String SUCCESS = "success";
/**
* 测试自定义视图
*/
@RequestMapping("/testView")
public String testView(){
return "helloView";
}
}
4.访问测试:http://localhost:8081/spring-mvc-helloworld/springmvc/testView
页面输出:
hello view , time Wed Aug 09 19:12:55 CST 2017
关于重定向
文章图片
Paste_Image.png
1.修改 SpringMVCTest 控制器
/**
*测试重定向
*/
@RequestMapping(value="https://www.it610.com/article/testRedirect")
public String testRedirect()
{
System.out.println("testRedirect");
//重定向
return "redirect:/index.jsp";
//内部转发
//return "forward:/index.jsp";
}
2.访问:http://localhost:8081/spring-mvc-helloworld/springmvc/testRedirect会跳转到 index.jsp 页面;
点击查看演示代码