Spring初入配置~十二

1使用Apache Tiles视图定义布局

在jsp中布局并不是做的很好,最好的方式就是使用布局引擎。我们在这里介绍下Apache Tiles 这个布局引擎。定义适用于所有页面的布局,并且SpringMvc视图解析器也能够将逻辑视图名解析为Tile定义。

在Sping中使用Tiles 我们需要配置好bean在xml中或者java程序中。

Spring初入配置~十二_第1张图片
来自Spring实战第四版
来自Spring实战第四版

       这就我们在程序中上面配置好需要用到 的视图,并且要启动刷新功能。

如果不喜欢在java程序中配置。我们可以在xml文件中配置好TilesConfigurer和TilesViewResolver:

Spring初入配置~十二_第2张图片
来自Spring实战第四版

在这里TilesConfigurer回家再Tile定义并与ApacheTiles协作,而TilesViewRe-solver会将伙计视图名称解析为Tile定义的视图。

Spring初入配置~十二_第3张图片
来自Spring实战第四版

在这里面最终引用的还是在jsp模板当中。我们在某个jsp当中怎么将模板嵌入进去呢?这里就会使用到这个标签来引入我们需要的模板。

2使用Thymeleaf模板来代替jsp

为什么使用Thymeleaf模板,是因为有自定义的命名空间,并且给html标签集合添加Thymeleaf属性。

首先我们需要配置视图解析器,模板加载并且渲染模板。

Spring初入配置~十二_第4张图片
来自Spring实战第四版


Spring初入配置~十二_第5张图片
来自Spring实战第四版

还是提供了两种配置方式来解析bean.使用java程序或者xml文件来解析。不管使用哪种配置方式都可以将响应的模板渲染到mvc中。

我们先写一个首页的html,并且在其中引入模板

Spring初入配置~十二_第6张图片
来自Spring实战第四版

在这里我们使用简单的th:href属性,这个是对应html中的href属性。我们在jsp中经常用jstl表达式来解析值,但是在Thymeleaf这个模板中我们用@{}来计算路径。

我们使用jsp中也使用它的表单数据提交,接下来我们就说下Thymeleaf的表单数据提交   

Spring初入配置~十二_第7张图片
来自Spring实战第四版

首先都是在form上表单绑定了 th:object 对象,在表单中得th:fields就是绑定对象中的属性*{属性名称}。在这里简单介绍下表达式的不同${}表达式就是变量表达式,一般是ognl表达式,但是在Spring中是SpEL表达式。而*{}属于选择表达式,在上图中选中的对象就是th:object属性所设置的对象:模型中的Spitter对象。因此*{firstName}表达式就会计算为Spitter对象中的firstName属性。具体关于Thymeleaf模板的信息我们可以去官网进行学习 http://www.thymeleaf.org/

你可能感兴趣的:(Spring初入配置~十二)