springMVC-5-视图解析器
2024-08-25 06:40:48
视图和视图解析器工作流程
- 第一步:获取到ModelAndView对象
请求处理方法执行完成后,无论返回是String,View 还是 ModeMap 类型,Spring MVC 也会在内部将它们装配成一个 ModelAndView 对象,它包含了逻辑名和模型对象的视图
- 第二步:把ModelAndView对象处理得到View对象,再得到真正的视图
Spring MVC 借助视图解析器(ViewResolver)得到最终 的视图对象(View),最终的视图可以是 JSP ,也可能是 Excel、JFreeChart 等各种表现形式的视图
常用的视图表现类
jstl配置的国际化操作
配置依赖
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl-api</artifactId>
<version>1.2</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
<exclusion>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
//记住:一定要在IDEA中的lib目录下配置好这几个依赖
配置properties配置文件
在resource下创建三个文件:i18n.peroperties、i18n_zh_CN.properties、i18n_en_US.properties
创建之后会自动生成Resoure Bundle 'i18n'目录把这三个配置文件包含在一起
i18n.peroperties
i18n.username = Username
i18n.password = Password
i18n_zh_CN.properties
i18n.username = \u7528\u6237\u540D
i18n.password = \u5BC6\u7801
i18n_en_US.properties
i18n.username = Username
i18n.password = Password
在springmvc-servlet.xml配置文件中配置国际化资源文件
<!--配置国际化资源文件-->
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename" value="i18n"/>
</bean>
在目标jsp文件中添加jstl配置
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
//使用
<fmt:message key="i18n.username"></fmt:message>
<br>
<fmt:message key="i18n.password"></fmt:message>
<br>
在电脑首选项为中文的情况下会显示中文,首选项为英文的时候会显示英文
配置直接转发页面(不经过control)
springmvc-servlet.xml
<!--配置直接转发页面-->
<!--当在jsp页面里转/redict时,会直接转到/ModelAndViews页面,而不会经过dispatcherServlet控制器-->
<mvc:view-controller path="/redict" view-name="ModelAndViews"/>
index.jsp
<h1>配置直接转发页面</h1>
<a href="/redict">直接跳转</a>
自定义视图(了解)
重定向
- 一般情况下,控制器方法返回字符串类型的值会被当成逻 辑视图名处理
- 如果返回的字符串中带 forward: 或 redirect: 前缀 时,SpringMVC 会对他们进行特殊处理:
- 将 forward: 和 redirect: 当成指示符,其后的字符串作为 URL 来处理
- redirect:success.jsp:会完成一个到 success.jsp 的重定向的操作
- forward:success.jsp:会完成一个到 success.jsp 的转发操作
最新文章
- Java ConcurrentModificationException异常原因和解决方法
- 类似\u4e0b\u6ce8\u903e\u65f6解码
- 【Android】事件总线(解耦组件) EventBus 详解
- sprint3 总结
- Linux(Ubuntu)下面SecureCRT 完全破解
- Mybatis的分页插件PageHelper
- Android Volley 框架的使用(一)
- 解决:Ubuntu12.04下使用ping命令返回ping:icmp open socket: Operation not permitted的解决
- 为什么这么多Python框架
- 窗口对象的方法 prompt() 用来输入数据
- 编译最新ffmpeg2.0.1到iOS设备
- cocos2d-x 网络请求
- import,include
- Swift自增和自增运算
- 【技术分享】手把手教你使用PowerShell内置的端口扫描器
- 剑指offer面试题14-调整数组顺序使奇数位于偶数前面
- Android Training
- 模拟vue的tag属性,在react里实现自定义Link
- MapReduce-序列化(Writable)
- 关于Idea模块化部署web项目,Web Resource Directories作用
热门文章
- GPU上创建目标检测Pipeline管道
- 使用regulator_get时的一个小注意事项
- MySQL基础练习
- JAVA微服务应用(1)--SpringBoot中的REST API调用(学习笔记)
- 打开黑盒:从 MySQL架构设计出发,看它是如何执行一条 SQL语句的
- Spring Cloud 和 Dubbo,到底用哪个好?
- NOIP模拟测试4「礼物&#183;通讯&#183;奇袭」
- 『心善渊』Selenium3.0基础 — 11、Selenium对元素常用操作
- C++中运算符的重载
- 19、lnmp_mysql、nfs组件分离