Spring MVC 中,多采用Freemarker作为视图层技术,主要是因为它功能强大,性能良好。现在我开发的Beetl模板语言也可以作为Spring MVC中的另外一个视图技术选择, 如果有兴趣,可以访问Beetl 主页 http://beetl.sourceforge.net/ 。
以下文档节选自beetl指南 第四章
4. Spring MVC
4.1. 配置ViewResolver
为了能在Spring MVC中使用Beetl,必须配置ViewResolver,如下
<bean id="beetlConfig" class="org.bee.tl.ext.spring.BeetlGroupUtilConfiguration" init-method="init">
<property name="root" value="/"/>
<property name="optimize" value="true"/>
<property name="nativeCall" value="true"/>
<property name="check" value="2"/>
</bean>
<bean id="viewResolver" class="org.bee.tl.ext.spring.BeetlSpringViewResolver">
</bean>
|
Root属性告诉Beetl 模板文件未WebRoot的哪个目录下,通常是/ ,默认是/
optimize 属性允许优化,预编译成class。默认是true
nativeCall 运行本地调用,默认是true
check 是每隔多少秒检测一下文件是否改变,设置较短时间有利于开发,在线上环境,设置为0,则不检查模板更新,默认是2秒
其他属性还有
tempFolder:预编译生成的源文件以及class的位置,默认是WebRoot/WEB-INF/.temp 目录下
占位符指定:statementStart,statementEnd,placeholderStart,placeholderEnd 默认分别是 <% %> ${ }
4.2. 模板中获取参数
在Spring MVC中,任何在ModelMap中的变量都可以直接在Beetl中引用,在Session中的变量,需要使用session["变量名"]
如下HelloWorldController 代码
@Controller
@SessionAttributes("currUser")
public class HelloWorldController {
@RequestMapping("/hello")
public ModelAndView helloWorld(ModelMap model ) {
String message = "Hello World, Spring 3.0!";
model.addAttribute("name","joel");
model.addAttribute("currUser","libear");
return new ModelAndView("/hello.html", "message", message);
}
}
|
则在模板中,访问name,message,currUser分别采用如下方式
${name},${message},${session["currUser"]}
分享到:
相关推荐
在Spring MVC中,视图通常是一个JSP、FreeMarker或Thymeleaf等模板引擎页面。这些模板引擎允许开发者将业务逻辑与表现层分离,提高代码的可维护性和复用性。视图主要负责接收模型数据,并将其渲染成HTML响应返回给...
配置Spring MVC以使用一个支持JSX的视图解析器,如`Thymeleaf`或自定义的解析器。如果你选择Thymeleaf,可以添加Thymeleaf的依赖,并在`application.properties`中配置模板目录。对于自定义解析器,你需要实现`...
Spring MVC 是 Spring 框架的一个重要模块,它为构建基于Java的Web应用程序提供了一个强大的模型-视图-控制器(MVC)架构。Spring MVC 的设计允许开发者将业务逻辑、数据处理和用户界面分离,从而实现更好的可维护性...
Spring MVC支持多种视图技术,如JSP、FreeMarker或Thymeleaf,开发者可以根据项目需求选择合适的视图解析器。 视图解析器是Spring MVC中用于确定视图名对应的实际资源路径的组件。例如,...
与 Spring Web MVC 并行地,Spring Framework 5.0 引入了响应式栈——一个名为 Spring WebFlux 的 Web 框架,该框架的命名也是基于其源模块 `spring-webflux`。本节将重点讨论 Spring Web MVC。 #### 二、...
在这个"最全最经典spring-mvc教程"中,我们可以期待深入探讨Spring MVC的各个方面。 首先,Spring MVC的基础架构包括DispatcherServlet(前端控制器)、Model、View和Controller。DispatcherServlet是整个流程的...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。这个教程“Spring MVC - A Tutorial”旨在帮助开发者深入理解和掌握Spring MVC的核心概念和...
7. **ModelAndView**:这是 Spring MVC 中的一个重要类,用于存储模型数据和视图名。在控制器处理完请求后,可以通过返回一个 ModelAndView 对象来指定视图和传递模型数据。 8. **视图解析**:Spring MVC 支持多种...
Spring MVC是Spring框架的一个核心模块,专为构建Web应用程序提供模型-视图-控制器(MVC)架构。在Spring MVC 4.0版本中,它引入了许多改进和新特性,以提升开发效率和应用程序的性能。 1. **依赖注入**:Spring ...
在Controller方法中,可以返回一个ModelAndView对象,指定返回的视图和传递给视图的数据。 5. **视图解析**: Spring MVC支持多种视图技术,如JSP、FreeMarker、Thymeleaf等。通过`viewResolver`配置,可以指定视图...
Spring MVC是Spring框架的一个核心模块,专为构建Web应用程序而设计。它提供了模型-视图-控制器(MVC)架构,使开发者能够有效地分离业务逻辑、数据处理和用户界面。在"Spring MVC 4.2.3"版本中,我们看到了一系列的...
**Spring MVC —— 第一个应用程序** Spring MVC 是 Spring 框架的一个模块,主要用于构建 Web 应用程序。它提供了一种模型-视图-控制器(MVC)架构,简化了开发过程,使得开发者可以专注于业务逻辑而不必过于关心...
九、Spring MVC中的拦截器:拦截器是Spring MVC提供的一个可插入的组件,可以用来实现请求预处理和后处理。拦截器可以在请求到达控制器之前进行拦截,并对请求或响应进行一些预处理工作。 十、Spring MVC如何使用...
JSP、FreeMarker、Thymeleaf等都可以作为视图技术,Spring MVC支持多种视图技术的集成。 5. **模型数据:Model和ModelAndView** Model接口用于存储请求处理过程中产生的数据,这些数据可以通过Model.addAttribute...
Spring MVC 4.2.4.RELEASE虽然不是一个正式版本,但其包含的特性仍然非常实用,可以为开发工作提供强大支持。 **1. 模型-视图-控制器架构** Spring MVC的核心是MVC模式,它将应用程序分为三个主要部分:模型、视图...
Spring MVC 是一个基于Java的轻量级Web应用框架,它属于Spring框架的一部分,主要用于构建控制器层,实现模型-视图-控制器(Model-View-Controller)架构。在Spring MVC中,开发者可以方便地处理HTTP请求,进行数据...
Spring MVC是Spring框架的一个核心模块,专用于构建Web应用程序。这个"Spring MVC使用Demo"提供了实践操作,帮助开发者深入理解Spring MVC的开发环境配置、注解的使用以及工作原理。 首先,Spring MVC的设计模式...