springMVC2
一、视图解析流程
springMVC中视图解析器


1.视图最终的页面渲染。view视图来做,render
2.跳转到目标视图,请求转发。
3.遍历视图解析器,逻辑视图转换为物理视图。
1)视图
视图的作用是渲染模型数据,将模型里的数据以某种形式呈现给客户,为了实现视图模型和具体实现技术的解耦,Spring在org.springframework.web.servlet包中定义了一个高度抽象的View接口。
里面提供了两个方法:getContentType(视图要显示的内容类型),render(真正渲染视图)。
即将逻辑视图转换为view接口实现的对象,springMVC调用view接口对象方法render完成视图渲染。
视图对象由视图解析器负责实例化。由于视图是无状态的,所以他们不会有线程安全问题。
二、常用的视图实现类
1)URL视图资源
1.InternalResourceView:将jsp或其他资源封装成一个视图,是InternalTesourceViewResolver默认使用的视图实现类
2.JstlView:如果jsp文件中使用了jstl国际化标签功能,则需要使用该视图。
业务要求:访问一个页面,浏览器环境为中文,则显示中文,为英文则显示英文。
国际化:
1.写对应的资源文件 .properties
国际化资源文件命名规则:资源文件名称_语言编码_国家编码.properties
例:abc_zh_CN.properties
abc_en_US.properties
key=value形式


2.告知springMVC所要使用的资源文件

3.JSTL:标签库
fmt标签库里的message标签,可以通过key属性引用国际化资源文件中的value

在上面这种方式中,必须用一个页面作为跳转,才可以经过springMVC核心控制器处理
如何直接定义一个映射?
mvc:view-contorller

这样就不需要经过目标方法的跳转
注意:如果我们给某一个视图,配置了映射信息,其他控制器方法全部无效
解决;加入<mvc:annotation-driven></mvc:annotation-driven>

2)文档视图
1.AbstractExcelView:Excel文档视图的抽象类。该视图类基于POI构造Excel文档
三、自定义视图
1)写一个视图类型
实现一个接口view

2)视图加载到spring容器中
3)对应的视图解析器

springMVC2的更多相关文章
- springmvc2 一个控制器写多个方法(非注解方式)
出处:http://blog.csdn.net/xuewenke/article/details/23895999 springmvc2 一个控制器写多个方法(非注解方式) 分类: spring 20 ...
- springMVC2 1入门程序
1入门程序 .1需求 实现商品列表查询 .2需要的jar包 使用spring3.2.0(带springwebmvc模块) .1前端控制器 在web.xml中配置: <?xml version=& ...
- 老帖收藏,留供参考:SpringMvc2.5+Mybatis3.2.7
一.项目背景 SpringMvc+Mybatis 数据库连接池是阿里巴巴的druid.日志框架式logback 二.配置文件 1.SpringMvc-servlet.xml <?xml vers ...
- 6.SpringMVC2
1.视图解析 当客户端发出请求后,交由SpringMVC的DispatcherServlet处理,接着Spring会分析看哪一个HandlerMapping定义的所有请求映射中对该请求的最合理的映射, ...
- 项目记事【SpringMVC-2】:将后台的对象,转成JSON报文
Spring版本:3.2.7 Jackson版本: <!--Jackson --> <dependency> <groupId>com.fasterxml.jack ...
- 【Java EE 学习 83 下】【SpringMVC】【使用注解替代已过时的API】【SpringMVC、Hibernate整合】
一.SpringMVC中注解的使用 1.为什么要使用注解 之前曾经提到过的三种控制器在spring3.0中都已经被明确标记为过时了,spring3.0推荐使用注解的方式替代三种控制器,实际上使用注解的 ...
- 学习笔记_springmvc返回值、数据写到页面、表单提交、ajax、重定向
数据写到页面 后台往前台传数据 TestController添加 /** * 方法的返回值采用ModelAndView, new ModelAndView("index", map ...
- Spring MVC配置
web配置 <?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="ht ...
- spring mvc实现查询
实体类:User package cn.bdqn.pojo; public class User { private String userName; private String password; ...
随机推荐
- VS与Windbg调试
原文 : https://blog.csdn.net/fin86889003/article/details/20126593 原文 : https://blog.csdn.net/u014339 ...
- CSAPP:第十章 系统级I/O
CSAPP:第十章 系统级I/O 10.1 unix I/O10.2 文件10.3 读取文件元数据10.4 读取目录内容10.5 共享文件10.6 我们该使用哪些I/O函数? 10.1 unix I/ ...
- [十二省联考2019]D2T2春节十二响
嘟嘟嘟 这题真没想到这么简单-- 首先有60分大礼:\(O(n ^ 2logn)\)贪心.(我也不知道为啥就是对的) 然后又送15分链:维护两个堆,每次去堆顶的最大值. 这时候得到75分已经很开心了, ...
- upstream timed out (110: Connection timed out) while reading response header from upstream, client:
遇到的问题 之前没配置下面这段,访问时候偶尔会出现 504 gateway timeout,由于偶尔出现,所以不太好排查 proxy_connect_timeout 300s;proxy_read_t ...
- 北京大学冯哲清北学堂讲课day1
贪心方案: 答案是第三个策略 二分的一个重点是有顺序性,只有满足这个件才可以二分判断区间,否则你得自己构造顺序. 洛谷跳石头同题: 首先,我们要最小化最大跳远距离 代码如下(此题) #include& ...
- Divisibility by 25 CodeForces - 988E (技巧的暴力)
You are given an integer nn from 11 to 10181018 without leading zeroes. In one move you can swap any ...
- hibernate 查询字段是重复名字的处理方法
目前遇到了三种情况: 一:当表的字段是数字类型(int,long .....) select name,ifnull(conpih.uh_id,0) from user; 将重复的字段如上修改用ifn ...
- WMI Explorer操作 和 powershell命令
powershell查看wmi root 空间 PS C:\Users\yyy> Get-WmiObject -Class __namespace -Namespace root | selec ...
- this.$router.push、replace、go的区别
1.this.$router.push() 描述:跳转到不同的url,但这个方法会向history栈添加一个记录,点击后退会返回到上一个页面. 用法: 2.this.$router.replace() ...
- react-navigation使用之嵌套和跳转
1. 新版react-native已经将react-navigation作为官方版本发布,基础Demo可以从官方网站获得,比较困扰的问题是组件的嵌套和第二.第三页面的跳转. 2. 组件嵌套问题: 要在 ...