文档章节

springMVC--(讲解2)结果跳转方式

求是科技
 求是科技
发布于 2016/10/07 16:14
字数 534
阅读 70
收藏 0

#方式1:通过ModelAndView实现
设置ModelAndView对象,根据viewName和视图解析器跳转到指定的页面。
页面路径:视图解析器前缀+viewName+视图解析器后缀
ModelAndView设置如下

	@RequestMapping(value="/hello",method= RequestMethod.GET)
	public ModelAndView hello(HttpServletRequest req,HttpServletResponse resp){
		ModelAndView mav = new ModelAndView();
		//封装要显示的视图中的数据
		mav.addObject("msg","hello springmvc");
		//视图名,该视图是/WEB-INF/jsp/hello.jsp
		mav.setViewName("hello");
		return mav;
	}

视图解析器如下

	<bean id="viewResolver"  class="org.springframework.web.servlet.view.UrlBasedViewResolver">
		<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>
		<property name="prefix" value="/WEB-INF/jsp/"></property>
		<property name="suffix" value=".jsp"></property>
	</bean>

#方式2:通过ServletAPI实现,这个不需要配置视图解析器
通过HttpServletResponse来进行输出

	@RequestMapping(value="/hello",method= RequestMethod.GET)
	public void hello(HttpServletRequest req,HttpServletResponse resp) throws IOException{
		resp.getWriter().println("hello mvc");
	}

#方式3:通过HttpServletResponse来实现重定向

	@RequestMapping(value="/hello",method= RequestMethod.GET)
	public void hello(HttpServletRequest req,HttpServletResponse resp) throws IOException{
		//HttpServletResponse输出
		//resp.getWriter().println("hello mvc");
		//HttpServletResponse重定向  
		resp.sendRedirect("index.jsp");
	}

#方式4:通过HttpServletRequest转发

	@RequestMapping(value="/hello",method= RequestMethod.GET)
	public void hello(HttpServletRequest req,HttpServletResponse resp) throws IOException, ServletException{
		//HttpServletResponse输出
		//resp.getWriter().println("hello mvc");
		//HttpServletResponse重定向  
		//resp.sendRedirect("index.jsp");
		//HttpServletRequest转发
		req.setAttribute("msg", "显示内容");
		req.getRequestDispatcher("index.jsp").forward(req, resp);
	}

#方式5:通过springmvc实现重定向与转发(没有视图解析器)
重定向与转发的区别
地址栏里的地址没有改变的话,是转发;改变了则是重定向。

	@RequestMapping(value="/hello",method= RequestMethod.GET)
	public String hello(HttpServletRequest req,HttpServletResponse resp) throws IOException, ServletException{
		//转发方式1
		//return "index.jsp";
		//转发方式2
		return "forward:index.jsp";
	}

重定向

	@RequestMapping(value="/hello",method= RequestMethod.GET)
	public String hello(HttpServletRequest req,HttpServletResponse resp) throws IOException, ServletException{
		//转发方式1
		//return "index.jsp";
		//转发方式2
		//return "forward:index.jsp";
		//重定向(地址栏会改变)
		return "redirect:index.jsp";
	}

#方式6:通过springmvc实现重定向与转发(有视图解析器)

	@RequestMapping(value="/hello",method= RequestMethod.GET)
	public String hello(HttpServletRequest req,HttpServletResponse resp) throws IOException, ServletException{
		//转发方式1(有视图解析器)
		//return "hello";
		//重定向(注意:重定向是不需要使用视图解析器的)
		return "redirect:index.jsp";
	}

© 著作权归作者所有

共有 人打赏支持
求是科技
粉丝 90
博文 438
码字总数 225859
作品 0
成都
后端工程师
SpringMVC从Controller跳转到另一个Controller

需求背景 需求:spring MVC框架controller间跳转,需重定向。有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示。 本来以为挺简单的一件事情,并且个人...

嘻哈开发者
2015/04/25
0
1
SpringMVC——redirect重定向跳转传值

spring MVC框架controller间跳转,需重定向。有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示。 首先先来介绍一下不带参数的重定向: 我在后台一个c...

引鸩怼孑
2015/04/10
0
0
史上最简单的 Spring MVC 教程(三)

1 前言 在史上最简单的 Spring MVC 教程(二)中,咱们讲解了常见的处理器映射(handlerMapping),并给出了应用示例。在本篇博客中,咱们讲解常见的控制器(Controller),在这里有一点需要...

qq_35246620
2017/01/26
0
0
SpringMVC常用注解,返回方式,路径匹配形式,验证

常用注解元素 @Controller 标注在Bean的类定义处 @RequestMapping 真正让Bean具备 Spring MVC Controller 功能的是 @RequestMapping 这个注解 @RequestMapping 可以标注在类定义处,将 Cont...

随智阔
2014/03/09
0
0
Spring Security3源码分析-CAS支持

Spring Security3对CAS的支持主要在这个spring-security-cas-client-3.0.2.RELEASE.jar包中 Spring Security和CAS集成的配置资料很多。这里讲解的比较详细 http://lengyun3566.iteye.com/blo...

Dead_knight
2014/01/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

kubeadm部署kubernetes集群

一、环境要求 这里使用RHEL7.5 master、etcd:192.168.10.101,主机名:master node1:192.168.10.103,主机名:node1 node2:192.168.10.104,主机名:node2 所有机子能基于主机名通信,编辑...

人在艹木中
今天
6
0
Shell特殊符号总结以及cut,sort,wc,uniq,tee,tr,split命令

特殊符号总结一 * 任意个任意字符 ? 任意一个字符 # 注释字符 \ 脱义字符 | 管道符 # #号后的备注被忽略[root@centos01 ~]# ls a.txt # 备注 a.txt[root@centos01 ~]# a=1[root@centos01...

野雪球
今天
2
0
OSChina 周二乱弹 —— 程序员圣衣

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @达尔文:分享Skeeter Davis的单曲《The End of the World》 《The End of the World》- Skeeter Davis 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
14
0
[ python import module ] 导入模块

import moudle_name ----> import module_name.py ---> import module_name.py文件路径 -----> sys.path (这里进行查找文件) # from app.web import Personimport app.web.Person as Pe......

_______-
昨天
5
0
Redis性能问题排查解决手册

一、性能相关的数据指标 通过Redis-cli命令行界面访问到Redis服务器,然后使用info命令获取所有与Redis服务相关的信息。通过这些信息来分析文章后面提到的一些性能指标。 nfo命令输出的数据可...

IT--小哥
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部