springmvc中的视图模型的返回方式

way1:略过;
way2:(神似way1)通过在方法的参数中添加一个Model类型的参数,,该参数由spring自动生成传入,
然后在方法内部使用addAttribute()方式添加模型数据,
最后使用return返回一个视图名称(视图的路径),
从而在页面上可以同时使用模型数据以及得到视图页面.
way3:当方法没有返回值时,此时请求该方法的资源路径将成为视图的路径,
当时由于是直接从外部访问,因此该方式无法访问位于WEB-INF内的资源,同时资源也无法加上后缀名....不爽!!!
具体如下图:

way 3中的问题的解决方案:在springmvc的包里面有一个DispatcherServlet.properties的文件,其中有
org.springframework.web.servlet.ViewResolver=org.springframework.web.servlet.view.InternalResourceViewResolver这一个配置,其为默认的视图解析
器,,此时我们需要对其进行自定义的配置,,由该视图解析器对应的类InternalResourceViewResolver所继承的父类UrlBasedViewResolver中有两个前后缀的属性,,我们在
ApplicationContext中对此2个前后缀进行重新配置,将前缀自定义为WEB-INF,而后缀自定义为.jsp,,这样在方法中返回的视图名称就只需写中间的部分,即可正常访问带后
缀名的文件资源了.具体配置如下图:

具体方法如下:

以上仍然存在缺点:又如何访问位于web-inf外部的资源,以及如何自定义资源的访问方式是时转发(forward)还是重定向(redirect)????
解决方法:在每个资源视图名称前加上forward或redirect前缀,即可实现自定义是采用转发还是重定向的方法方式....
[注]:此时,后面的视图名称必须是一个完整的路径..

加redirect前缀的实例如下:
此时,方法中不用Model类型的对象了,因为是重定向....也只能访问web-inf外部的资源..

springmvc中的视图模型的返回方式的更多相关文章
- springMVC中controller的几种返回类型
==网文1,还不错,感觉比较老旧springMVC中controller的几种返回类型 - CSDN博客http://blog.csdn.net/qq_16071145/article/details ...
- SpringMVC中的视图和视图解析器
对于控制器的目标方法,无论其返回值是String.View.ModelMap或是ModelAndView,SpringMVC都会在内部将它们封装为一个ModelAndView对象进行返回. Spri ...
- SpringMVC 04: SpringMVC中4种页面跳转方式
转发和重定向的页面跳转方式 页面跳转方式,本质上只有2种方式:转发 + 重定向 但在SpringMVC的具体实现上,转发可以细分为:普通的页面转发 + 经由action方法的页面转发 重定向可以细分为 ...
- SSM-SpringMVC-09:SpringMVC中以继承MutiActionController类的方式实现处理器
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- MutiActionController类,多行动处理器,简单来说,就是可以一个处理器中有多个处理方法,分支 ...
- jQuery中的ajax服务端返回方式详细说明
http://blog.sina.com.cn/s/blog_6f92e3a70100u3b6.html 上次总结了下ajax的所有参数项,其中有一项dataType是设置具体的服务器返回方式 ...
- SSM-SpringMVC-13:SpringMVC中XmlViewResolver视图解析器
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 还记得上篇博客提出来的问题吗? BeanNameViewResolver视图解析器每使用一道视图,就得手工配 ...
- 在.NET中实现Actor模型的不同方式
上周,<实现领域驱动设计>(Implementing Domain-Driven Design)一书的作者Vaughn Vernon,发布了Dotsero,这是一个使用C#编写的.基于.N ...
- SpringMVC中HandlerMapping的三种配置方式
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE beans PUBLIC "-/ ...
- SpringMVC中controller的几种返回值
String :跳转到对应的返回值中. return “/index”: ModelAndView: 控制页面跳转方式: 1. ModelAndView modelAndView = new Mode ...
随机推荐
- 生成json文件写入本地
public class Json { public static void main(String[] args) { String fullPath = null; //例如:fullPath=& ...
- C++入门经典-例5.17-右值引用的定义
1:右值引用的定义: 类型 && i=被引用的对象: 左值与右值的区别在于,右值是临时变量,例如,函数的返回值,并且无法被改变. 当右值引用被初始化后,临时变量消失. 代码如下: // ...
- 【python学习】字符串相关
# -*- coding: utf-8 -*- # ========================================================================== ...
- 过滤器修改response
过滤器通过doFilter方法的第二个参数ServletResponse将输出发送给客户,但servletResponse参数没有为过滤器提供servlet或jsp页面的访问:执行doFilter方法 ...
- tps抖动
https://blog.csdn.net/lzqinfen/article/details/46820673 tps抖动厉害的原因?突然增加成倍的用户,如果性能表现良好,TPS应该成倍增加,响应时间 ...
- 实现Servlet接口
1 右键项目->Build Path->Configure Build Path 2 Add Library...->Server Runtime 3 Apache Tomcat-& ...
- Dojo入门:初识Dojo
Dojo的全称是Dojo Toolkit,始创于2004年,是当前各种蓬勃发展的JS工具包中的佼佼者.Dojo 为富互联网应用程序(RIA) 的开发提供了完整的端到端的解决方案,包括核心的 Jav ...
- 6.3.2巴特沃斯(butterworth)低通滤波器
在本程序中,共有六个自定义函数,分别是: 1. myMagnitude(Mat & complexImg,Mat & magnitudeImage),在该函数中封装了Opencv中的 ...
- 封装cookie,自定义过期时间,domain,path
在使用Cookie进行存储的时候,遇到了许多不可思议的bug,特地标识出来,以作总结. 是这样一个项目,登录是放在官网进行操作的,而登录进入的是后台,后台和官网属于同一域名的不同目录,那么常规进行co ...
- cocos2dx基础篇(23) 粒子系统CCParticleSystem
[3.x] (1)去掉"CC" (2)粒子位置模式 tPositionType 改为强枚举类型 ParticleSystem::PositionType:: // ...