首先是在Web.xml
中配置请求分法器 代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!-- ======================================================== -->
<!-- Spring MVC Config Servlet -->
<!-- ======================================================== -->
<!-- JSP DispatcherServlet -->
<servlet>
<servlet-name>jspdpt</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- FreeMarker DispatcherServlet -->
<servlet>
<servlet-name>ftldpt</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<!-- ======================================================== -->
<!-- Spring MVC Config Mapping -->
<!-- ======================================================== -->
<servlet-mapping>
<servlet-name>jspdpt</servlet-name>
<url-pattern>*.view</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ftldpt</servlet-name>
<url-pattern>*.ftl</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<jsp-config>
<taglib>
<taglib-uri>/spring</taglib-uri>
<taglib-location>/WEB-INF/spring.tld</taglib-location>
</taglib>
</jsp-config>
</web-app>
然后为不同的servlet
映射编写不同的Spring
的IOC
容器:
<?xml version="1.0" encoding="GB2312"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd">
<!-- ===================================================== -->
<!-- ViewResolver For FreeMarker -->
<!-- ===================================================== -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="cache">
<value>true</value>
</property>
<property name="suffix">
<value>.ftl</value>
</property>
<property name="exposeRequestAttributes">
<value>true</value>
</property>
<property name="exposeSessionAttributes">
<value>true</value>
</property>
<property name="exposeSpringMacroHelpers">
<value>true</value>
</property>
<property name="contentType">
<value>text/html; charset=GB2312</value>
</property>
</bean>
<!-- ===================================================== -->
<!-- ViewResolver For FreeMarkerConfigurer -->
<!-- ===================================================== -->
<bean id="freemarkerConfig"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath">
<value>/WEB-INF/FTL/</value>
</property>
<property name="defaultEncoding">
<value>GB2312</value>
</property>
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">3600</prop>
</props>
</property>
</bean>
<bean id="welcomeController" class="sprinl.mvc.WelcomeController">
<property name="viewName">
<value>welcome</value>
</property>
</bean>
<bean id="simpleUrlHandlerMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/welcome.ftl">welcomeController</prop>
</props>
</property>
</bean>
</beans>
以及
<?xml version="1.0" encoding="GB2312"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd">
<!-- ===================================================== -->
<!-- ViewResolver For JSP -->
<!-- ===================================================== -->
<bean id="JSPViewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="divfix">
<value>/WEB-INF/JSP/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
<bean id="IndexController" class="sprinl.mvc.IndexController">
<property name="messages">
<value>
我的第一个Spring-View
例子--
要给我鼓励</value>
</property>
<property name="page">
<value>home</value>
</property>
</bean>
<bean id="divsonController" class="sprinl.mvc.PresonController">
<property name="page">
<value>divson</value>
</property>
</bean>
<bean id="simpleUrlHandlerMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/home.view">IndexController</prop>
<prop key="/divson.view">divsonController</prop>
</props>
</property>
</bean>
</beans>
通过上述代码 就可以实现JSP
以及FreeMarker
的合作工作,前提条件是根据後最名称来进行请求的分发
分享到:
相关推荐
在Spring MVC框架中,视图和视图解析器是实现MVC模式中“V”(View)部分的关键组件。它们负责将处理完的数据转化为用户可以理解的格式,并展示在浏览器上。视图解析器则是连接控制器与视图的桥梁,它负责根据返回的...
本篇文章将深入探讨如何在Spring中配置Freemarker视图解析器,以及如何配置多个视图解析器以实现更灵活的应用场景。 首先,让我们了解如何配置单个Freemarker视图解析器。在Spring的配置文件(如`...
《Spring Web MVC 5.0.9:深度解析与应用》 Spring Web MVC是Spring框架的核心模块之一,专为构建Web应用程序提供模型-视图-控制器(MVC)架构支持。在Spring 5.0.9这个版本中,它延续了Spring对开发者友好、灵活且...
- 视图解析器根据ModelAndView中的视图名找到具体视图(如JSP),并将模型数据填充到request域中。 - 最后,服务器将渲染后的视图响应给客户端。 5. **注解驱动开发**: - 在Spring MVC 3.0以后,可以使用注解如...
总之,“Spring MVC - A Tutorial”这份指南会详细讲解Spring MVC的各个核心组件和使用技巧,包括控制器的创建、模型数据的管理、视图的渲染、以及各种高级特性。通过学习,开发者可以熟练地运用Spring MVC来构建...
8. **视图解析**:Spring MVC 支持多种视图技术,如 JSP、FreeMarker、Thymeleaf 等。视图解析器(ViewResolver)会根据指定的视图名和前缀/后缀来生成实际视图的全路径。 9. **数据绑定**:Spring MVC 自动支持...
视图解析器(ViewResolver)根据指定的逻辑视图名查找物理视图,常见的视图技术有JSP、Thymeleaf、FreeMarker等。 Spring MVC还支持数据绑定,自动将请求参数绑定到Java对象,这极大地简化了表单提交的处理。对于...
5. **配置视图**:设置视图解析器,例如,使用`InternalResourceViewResolver`来解析JSP视图。定义视图名与实际页面路径的映射关系。 6. **编写视图**:在JSP页面中使用EL(Expression Language)和JSTL标签来展示...
Spring MVC提供多种视图解析器,如InternalResourceViewResolver用于处理JSP视图,VelocityViewResolver处理Velocity模板等。 六、Form标签与数据绑定 Spring MVC提供了丰富的表单标签库,如、等,简化了表单元素...
在本示例 "spring-mvc-demo" 中,我们将探讨 Spring MVC 的核心概念、配置、控制器、视图解析以及如何与数据库进行交互。 1. **核心概念** - **DispatcherServlet**:Spring MVC 的入口点,负责处理所有的 HTTP ...
7. **视图解析**:Spring MVC 4.0支持多种视图技术,如JSP、FreeMarker、Thymeleaf等,视图解析器可以根据配置自动选择合适的视图技术。 8. **异步处理**:Spring MVC 4.0引入了异步请求处理,通过@...
Spring MVC支持多种视图技术,如JSP、FreeMarker或Thymeleaf,开发者可以根据项目需求选择合适的视图解析器。 视图解析器是Spring MVC中用于确定视图名对应的实际资源路径的组件。例如,...
- 在Spring MVC配置文件中声明处理器映射器、视图解析器、以及自定义的控制器等。 4. **创建简单示例** 在这个"Spring MVC 简单Demo"中,我们可能有一个名为`SummerWeb`的目录,其中包含以下文件: - `web.xml`...
- **配置文件**:通常使用XML或注解来配置Spring MVC,例如设置视图解析器、定义控制器映射规则等。 - **启用Spring MVC**:可以通过在web.xml中配置DispatcherServlet来启动Spring MVC。 #### 六、Spring MVC的...
Spring MVC与多种模板引擎(如FreeMarker、Thymeleaf、JSP等)无缝集成,方便创建动态网页。 **10. 国际化支持** Spring MVC提供国际化功能,允许根据用户的语言偏好显示不同语言的内容。 由于这是一个非正式版本...
4. **View**:视图是用户界面,Spring MVC支持多种视图技术,如JSP、FreeMarker、Thymeleaf等。视图解析器会根据ModelAndView中的信息来决定渲染哪个视图。 5. **ViewModel**:模型视图,是Model和View的组合,它...
Spring MVC默认提供了一些视图解析器,如InternalResourceViewResolver用于处理JSP视图,而JsonViewResolver可以处理JSON响应。但为了实现自定义多视图,我们可能需要创建自己的视图解析器或者扩展现有的。 例如,...
视图通常由模板引擎(如JSP、Thymeleaf或Freemarker)渲染,Spring MVC提供了ModelAndView或者Model接口来管理模型数据。 总的来说,Spring Web和Spring Web MVC是Spring框架的重要组件,它们为Java Web开发提供了...
这个"spring MVC简单示例"是为了帮助初学者理解Spring MVC的基本工作原理和配置,通过实践这个例子,你可以了解到如何创建一个简单的Controller、配置视图解析器并建立一个基本的请求处理流程。随着对Spring MVC的...