如果在一个项目中有人比较喜欢用freemarker,而有人对JSTL(Jsp标准标记库)比较熟,那就得配置多种视图的方式!
1.首先在web.xml,配置多个Dispatcher,不同视图当然转发不一样!
web.xml
<servlet-name>fm</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jstl</servlet-name>
<url-pattern>/*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>fm</servlet-name>
<url-pattern>/*.fm</url-pattern>
</servlet-mapping>
<servlet>
2.然后再配置*-servlet文件
jstl-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/hello.do">showCon</prop>
</props>
</property>
</bean>
<bean name="showCon" class="test.mvc.web.ShowController"/>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix"><value>/WEB-INF/template/jsp/</value></property>
<property name="suffix"><value>.jsp</value></property>
<property name="viewClass">
<value>org.springframework.web.servlet.view.JstlView</value>
</property>
</bean>
</beans>
fm-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/hello.fm">showCon</prop>
</props>
</property>
</bean>
<bean name="showCon" class="test.mvc.web.ShowController"/>
<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="suffix"><value>.fm</value></property>
<property name="viewClass">
<value>org.springframework.web.servlet.view.freemarker.FreeMarkerView</value>
</property>
<property name="contentType"><value>text/html; charset=gb2312</value></property>
</bean>
</beans>
两个视图都调用test.mvc.web.ShowController,所以即使全部换了视图层,也不影响到控制层的东西,这就是spring MVC强大之一!
分享到:
相关推荐
在Spring MVC框架中,视图和视图解析器是实现MVC模式中“V”(View)部分的关键组件。它们负责将处理完的数据转化为用户可以理解的格式,并展示在浏览器上。视图解析器则是连接控制器与视图的桥梁,它负责根据返回的...
十八、Spring MVC多视图控制器:解释了如何配置和使用Spring MVC的多视图控制器来处理不同的视图需求。 十九、<mvc:annotation-driven/>到底做了什么工作:描述了<mvc:annotation-driven />标签的作用,它自动注册...
在这个简单的例子中,可能只需要设置一个视图名,如"hello",然后Spring MVC会根据配置的视图解析器来查找对应的视图。 7. **视图解析**: 视图解析器(如`InternalResourceViewResolver`)根据给定的视图名找到...
2. **Java配置增强**:Spring 4.2.x系列进一步提升了Java配置的支持,使得在没有XML配置的情况下也能轻松地配置Spring MVC。 3. **RESTful支持**:Spring MVC提供了对RESTful风格的HTTP方法(如GET、POST、PUT、...
本篇文章将深入探讨如何在Spring中配置Freemarker视图解析器,以及如何配置多个视图解析器以实现更灵活的应用场景。 首先,让我们了解如何配置单个Freemarker视图解析器。在Spring的配置文件(如`...
Spring MVC是Spring框架的一个核心模块,专为构建Web应用程序提供模型-视图-控制器(MVC)架构。在Spring MVC 4.0版本中,它引入了许多改进和新特性,以提升开发效率和应用程序的性能。 1. **依赖注入**:Spring ...
在这个"spring mvc 整合包"中,我们很可能会找到一系列与Spring MVC相关的库和配置文件,以便于快速搭建开发环境。 1. **MVC架构**:MVC是一种设计模式,将业务逻辑、数据和用户界面分离。在Spring MVC中,...
1. 创建国际化资源文件:在Spring MVC项目中,创建一个或多个属性文件(通常以messages开头),这些文件包含了键值对,键是应用中需要翻译的文本的引用,而值是具体的文本内容。例如,在messages.properties中可以...
综上所述,整合Spring MVC和MyBatis涉及了Web应用的多个层面,从配置到业务逻辑,都需要细心设计和实现。这个过程不仅要求对两个框架有深入理解,还需要熟悉Spring的IoC和AOP原理。通过这样的整合,我们可以构建出...
这是一个基于Spring MVC、Mybatis和Spring框架实现的个人博客系统,涵盖了Web开发中的后端架构设计、数据库管理和前端展示等多个方面。以下将详细介绍这个系统的关键知识点: **1. Spring MVC** Spring MVC是Spring...
- **配置文件**:通常使用XML或注解来配置Spring MVC,例如设置视图解析器、定义控制器映射规则等。 - **启用Spring MVC**:可以通过在web.xml中配置DispatcherServlet来启动Spring MVC。 #### 六、Spring MVC的...
7. **ModelAndView**:这是 Spring MVC 中的一个重要类,用于存储模型数据和视图名。在控制器处理完请求后,可以通过返回一个 ModelAndView 对象来指定视图和传递模型数据。 8. **视图解析**:Spring MVC 支持多种...
在这个实例中,我们将探讨如何利用MVC注解配置来简化Spring MVC应用的设置和管理。MVC模式(Model-View-Controller)是软件设计的一种经典模式,它将业务逻辑、数据和用户界面分离,使得代码更加模块化,易于维护。 ...
在这个"Spring MVC HelloWord代码"示例中,我们将探讨如何创建一个基本的Spring MVC应用程序。 首先,我们需要理解Spring MVC的基本组成部分: 1. **DispatcherServlet**:这是Spring MVC的前端控制器,负责接收...
在本示例中,我们将深入探讨Spring MVC的基本概念、配置以及如何创建一个简单的应用程序。 1. **Spring MVC 概述** Spring MVC 是 Spring 框架的一部分,它简化了开发和测试Web应用程序的过程。通过分离业务逻辑、...
6. **ModelAndView**: 它是Spring MVC中用于携带模型数据和视图名的对象,可以在控制器方法中返回,以便于传递数据和指定视图。 7. **Form Handling**: Spring MVC 提供了强大的表单处理能力,包括自动数据绑定、...
- **视图链**:视图链是一种组织多个视图的方法,可以实现页面之间的跳转和重定向。 - **视图重定向**:当一个请求被处理完毕后,可能需要重定向到另一个页面。 - **内容协商解析器 ContentNegotiatingViewResolver*...